C语言实习题目源代码

更新时间:2023-05-11 09:56:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

题目一:通讯录

设计一个通讯录管理系统,每条记录包括:联系人姓名、性别、电话、住址、Email等。 系统功能要求:

(1)显示通讯录所有内容。按联系人姓名首字母排序,并统计共有多少条记录。

(2)查询通讯录。可按联系人姓名或电话号码查询,将查询结果整条记录输出到屏幕。

(3)修改通讯录。通过查询功能,找到需要修改的记录,并修改内容。在修改记录前显示是否要删除的提示。

(4)添加记录。需要判断新添加的记录是否存在,若存在终止该操作。

(5)删除指定记录。通过查询功能,找到要删除的记录。在删除记录前显示是否要删除的提示。

(6)退出通讯录管理系统。

题目二:兑奖程序

体育彩票有七位数字组成,第7位数字是特别号码,只有在前面六位数都正确的时候才对第七位数进行判断。现在体彩中心给出了 一组特等奖号码是:1、2、3、4、5、6、7。程序要求在屏幕上任意输入一组号码判断中了几等奖。

判断条件:如果七位数字都相同就是特等奖,前六位相同为一等奖,任意连续五位相同为二等奖,任意连续四位相同为三等奖,任意连续三位为四等奖,任意连续两位相同为五等奖。(注意:除特等奖外都不考虑第七位)。不考虑号码位置,只要连续几位相同都可以。比如给出号码是:2、32、1、2、3、4、5.就是中了三等奖。每组号码每个数范围为0~100。

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

题目一源代码:

#include"stdio.h"

#include"stdlib.h"

#include"string.h"

#include"string"

#define BUFLEN 100

#define LEN 15

#define N 100

struct record

{

char name[LEN+1]; //定义用户名

char sex[3];//定义性别

char add[30];//定义地址

char tel[LEN+1];//定义电话号码

char mail[30];//定义邮箱

}tongxunlu[N];

int k=1,n,m;

void readfile();//定义无返回值类型变量

void seek();

void modify();

void insert();

void del();

void display();

void save();

void menu();

int main()//定义主函数

{

while(k)

menu();

system("pause");//从程序里调用pause命令

return 0;

}

void readfile()//文件读取录入

{

char *p="tongxunludent.txt";

FILE *fp;

int i=0;

if ((fp=fopen("tongxunludent.txt","r"))==NULL)

{

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

printf("打开数据 %s 出错! 按任意键结束!",p);

system("pause");

exit(0);

}

while(fscanf(fp,"%s%s%d%s%s",tongxunlu[i].name,

tongxunlu[i].sex,tongxunlu[i].add,tongxunlu[i].tel,tongxunlu[i].mail)==5)

{

i++;

i=i;

}

fclose(fp);

n=i;

printf("录入完毕!\n");

}

void seek()//查找联系人信息

{

int i,item,flag;

char s1[21];//以姓名和电话号码最长长度+1为准

printf("------------------\n");

printf("-----1.按电话号查询-----\n");

printf("-----2.按联系人姓名查询-----\n");

printf("-----3.退出本菜单-----\n");

printf("------------------\n");

while(1)

{

printf("请选择子菜单编号:");

scanf("%d",&item);

flag=0;

switch(item)//子菜单选项

{

case 1://以联系人电话号码为查询方式

printf("请输入要查询的联系人的电话号码:\n");

scanf("%s",s1);

for(i=0;i<n;i++)

if(strcmp(tongxunlu[i].tel,s1)==0)//比较字符串 对比号码

{

flag=1;//输出结果

printf("姓名 性别 电话 地址 E-mail\n");

printf("--------------------------------------------------------------------\n"); for(i=0;i<n;i++)

{ printf("%6s %5s %10s %8s %14s\n",tongxunlu[i].name, tongxunlu[i].sex,tongxunlu[i].tel,tongxunlu[i].add,tongxunlu[i].mail); }

}

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

if(flag==0)//所查询的号码不存在时

printf("该号码不存在!\n");

break;

case 2://以联系人姓名为查询方式

printf("请输入要查询的联系人姓名:\n");

scanf("%s",s1);

for(i=0;i<n;i++)

if(strcmp(tongxunlu[i].name,s1)==0)//比较字符串 对比姓名 {

flag=1;

printf("姓名 性别 电话 地址 E-mail\n");

printf("--------------------------------------------------------------------\n"); for(i=0;i<n;i++)

{ printf("%6s %5s %10s %8s %14s\n",tongxunlu[i].name, tongxunlu[i].sex,tongxunlu[i].tel,tongxunlu[i].add,tongxunlu[i].mail); }

}

if(flag==0)//所查询的联系人不存在时

printf("该联系人不存在!\n");

break;

case 3://退出本菜单

return;

default:

printf("请在1-3之间选择\n");

}

}

}

void modify()//修改联系人信息

{

int i,item,num;//定义变量

char sex[3],s1[LEN+1],s2[LEN+1],s3;//以姓名和电话号码最长长度+1为准 for(i=0;i<n;i++)

if(strcmp(tongxunlu[i].tel,s1)==0)//比较字符串是否相等

num=i;

printf("------------------\n");

printf("1.修改姓名\n");

printf("2.修改性别\n");

printf("3.修改地址\n");

printf("4.修改电话号码\n");

printf("5.修改E-mail地址\n");

printf("6.退出本菜单\n");

printf("------------------\n");

while(1)

{

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

printf("请选择修改项目编号:"); scanf("%d",&item);

switch(item)

{

case 1: //修改姓名

printf("请输入新的姓名:\n"); scanf("%s",s2);

strcpy(tongxunlu[num].name,s2); break; //拷贝字符串

case 2: //修改性别

printf("请输入新的性别:\n"); scanf("%s",sex);

strcpy(tongxunlu[num].sex,sex); break;

case 3: //修改地址

printf("请输入新的地址:\n"); scanf("%s",s2);

strcpy(tongxunlu[num].add,s2); break;

case 4: //修改电话号码

printf("请输入新的电话号码:\n"); scanf("%s",s2);

strcpy(tongxunlu[num].tel,s2); break;

case 5: //修改邮箱地址

printf("请输入新的E-mail地址:\n"); scanf("%s",s2);

strcpy(tongxunlu[num].mail,s2); break;

case 6://退出本菜单

return;

default:

printf("请在1-6之间选择\n");

}

}

}

void sort()//按电话号码排序

{

int i,j; //定义变量

char temp[10]; //定义字符型数组存放电话号码

for(i=0;i<n-1;i++)

{

for(j=n-1;j>i;j--)

if(strcmp(tongxunlu[j-1].tel,tongxunlu[j].tel)>0)

{

strcpy(temp,tongxunlu[j-1].name); //拷贝字符串

strcpy(tongxunlu[j-1].name,tongxunlu[j].name);

strcpy(tongxunlu[j].name,temp);

strcpy(temp,tongxunlu[j-1].sex);

strcpy(tongxunlu[j-1].sex,tongxunlu[j].sex);

strcpy(tongxunlu[j].sex,temp);

strcpy(tongxunlu[j-1].add,tongxunlu[j].add);

strcpy(tongxunlu[j].add,temp);

strcpy(temp,tongxunlu[j-1].tel);

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

strcpy(tongxunlu[j-1].tel,tongxunlu[j].tel);

strcpy(tongxunlu[j].tel,temp);

strcpy(temp,tongxunlu[j-1].mail);

strcpy(tongxunlu[j-1].mail,tongxunlu[j].mail);

strcpy(tongxunlu[j].mail,temp);

}

}

}

void insert()//新增联系人信息

{

int i=n,j,flag; //定义变量

printf("请输入待增加的联系人数:\n"); scanf("%d",&m); do { flag=1; while(flag) { flag=0;

for(j=0;j<i;j++)

if(strcmp(tongxunlu[i].tel,tongxunlu[j].tel)==0) { //比较字符串 tel中的数字 printf("已有该号码,请检查后重新录入!\n"); flag=1;

break; //避免重复存储联系人

} }

printf("请输入第 %d 个联系人的姓名:\n",i+1); scanf("%s",tongxunlu[i].name); printf("请输入第 %d 个联系人的性别:\n",i+1); scanf("%s",tongxunlu[i].sex); printf("请输入第 %d 个联系人的地址:\n",i+1); scanf("%s",tongxunlu[i].add); printf("请输入第 %d 个联系人的电话:\n",i+1); scanf("%s",tongxunlu[i].tel);

printf("请输入第 %d 个联系人的E-mail:\n",i+1); scanf("%s",tongxunlu[i].mail); if(flag==0) { i=i; i++; } }

while(i<n+m);

n+=m;

printf("录入完毕!\n\n"); sort(); }

void del() //删除联系人

{

int i,j,flag=0; char s1[LEN+1]; //定义变量

printf("请输入要删除联系人的号码:\n"); scanf("%s",s1); for(i=0;i<n;i++) if(strcmp(tongxunlu[i].tel,s1)==0) { flag=1; //比较字符串

for(j=i;j<n-1;j++) tongxunlu[j]=tongxunlu[j+1]; }

if(flag==0) //判断联系人是否存在

printf("该联系人不存在!\n");

if(flag==1)

{

printf("删除成功,显示结果请选择菜单6\n"); n--; } }

void display()//显示所有联系人信息

{

int i;

printf("所有联系人的信息为:\n");

printf("姓名 性别 电话 地址 E-mail\n");

printf("--------------------------------------------------------------------\n");

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

for(i=0;i<n;i++)

{

printf("%6s %5s %10s %8s %14s\n",tongxunlu[i].name, tongxunlu[i].sex,tongxunlu[i].tel,tongxunlu[i].add,tongxunlu[i].mail);

}

}

void save() //数据的存储

{

int i;

FILE *fp; //声明fp是FILE型指针

fp=fopen("tongxunludent.txt","w"); //输入数据的写入

for(i=0;i<n;i++)

{

fprintf(fp,"%s %s %s %s %s %s\n",tongxunlu[i].name, tongxunlu[i].sex,tongxunlu[i].add,tongxunlu[i].tel,tongxunlu[i].mail);

}

fclose(fp);

}

void menu()//系统登录界面

{

int num;

printf("\n***************************************************\n"); printf(" \n 通 讯 录 信 息 管 理 系 统 \n\n"); printf("***************************************************\n"); printf("********************系统功能菜单*******************\n"); printf("\n*************************************************\n"); printf("\n*************************************************\n"); printf("********1.刷新联系人**************2.查询联系人*****\n");

printf("********3.修改联系人**************4.增加联系人*****\n");

printf("********5.删除联系人**************6.显示当前联系人*\n");

printf("********7.保存当前学生信息********8.退出系统*******\n");

printf("\n*************************************************\n"); printf(" 请输入操作序号:");

scanf("%d",&num);

switch(num) //对应选项的操作

{

case 1:readfile();break; //联系人数据的读取录入

case 2:seek();break;//联系人数据的查询

case 3:modify();break;//联系人数据的修改

case 4:insert();break;//增加联系人数据

case 5:del();break; //删除联系人

case 6:display();break;

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

case 7:save();break;

case 8:k=0;break;

default:printf("请在1-8之间选择\n");

}

return;

}

题目二源代码

#include <stdio.h>

#include <conio.h>

#include<stdlib.h>

int a,b,c,d,e,f,g;

int o,p,q,r,s,t,u;

int judge()

{

//中特等奖和一等奖的情况

if(a==o&&b==p&&c==q&&d==r&&e==s&&f==t) {

if(g==u)

{

printf("恭喜您中了特等奖,按任意键结束\n"); getch();

return 0;

}

else

{

printf("恭喜您中了一等奖,按任意键结束\n"); getch();

return 0;

}

}

//中二等奖的情况

if(a==o&&b==p&&c==q&&d==r&&e==s&&f!=t) {

printf("恭喜您中了二等奖,按任意键结束\n");

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

return 0; } if(a==p&&b==q&&c==r&&d==s&&e==t) { printf("恭喜您中了二等奖,按任意键结束\n"); getch();return 0; } if(b==o&&c==p&&d==q&&e==r&&f==s) { printf("恭喜您中了二等奖,按任意键结束\n"); getch();return 0; } if(a!=o&&b==p&&c==q&&d==r&&e==s&&f==t) { printf("恭喜您中了二等奖,按任意键结束\n"); getch();return 0; } //中三等奖的情况 if(a==o&&b==p&&c==q&&d==r&&e!=s) { printf("恭喜您中了三等奖,按任意键结束\n"); getch(); return 0; } if(b==o&&c==p&&d==q&&e==r&&f!=s) { printf("恭喜您中了三等奖,按任意键结束\n"); getch(); return 0; } if(c==o&&d==p&&e==q&&f==r) { printf("恭喜您中了三等奖,按任意键结束\n"); getch(); return 0; } if(a==p&&b==q&&c==r&&d==s&&e!=t) { printf("恭喜您中了三等奖,按任意键结束\n");

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

return 0; } if(a!=o&&b==p&&c==q&&d==r&&e==s&&f!=t) { printf("恭喜您中了三等奖,按任意键结束\n"); getch(); return 0; } if(b!=o&&c==p&&d==q&&e==r&&f==s) { printf("恭喜您中了三等奖,按任意键结束\n"); getch();return 0; } if(a==q&&b==r&&c==s&&d==t) { printf("恭喜您中了三等奖,按任意键结束\n"); getch(); return 0; } if(a!=p&&b==q&&c==r&&d==s&&e==t) { printf("恭喜您中了三等奖,按任意键结束\n"); getch(); return 0; } if(b!=p&&c==q&&d==r&&e==s&&f==t) { printf("恭喜您中了三等奖,按任意键结束\n"); getch();return 0; } //中四等奖情况 if(a==o&&b==p&&c==q&&d!=r) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(b==o&&c==p&&d==q&&e!=r) { printf("恭喜您中了四等奖,按任意键结束\n"); getch();

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

} if(c==o&&d==p&&e==q&&f!=r) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(d==o&&e==p&&f==q) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(a==p&&b==q&&c==r&&d!=s) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(a!=o&&b==p&&c==q&&d==r&&e!=s) { printf("恭喜您中了四等奖,按任意键结束\n"); getch();return 0; } if(b!=o&&c==p&&d==q&&e==r&&f!=s) { printf("恭喜您中了四等奖,按任意键结束\n"); getch();return 0; } if(c!=o&&d==p&&e==q&&f==r) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(a==q&&b==r&&c==s&&d!=t) { printf("恭喜您中了四等奖,按任意键结束\n"); getch();return 0; } if(a!=p&&b==q&&c==r&&d==s&&e!=t)

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(b!=p&&c==q&&d==r&&e==s&&f!=t) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(c!=p&&d==q&&e==r&&f==s) { printf("恭喜您中了四等奖,按任意键结束\n"); getch();return 0; } if(a==r&&b==s&&c==t) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(a!=q&&b==r&&c==s&&d==t) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(b!=q&&c==r&&d==s&&e==t) { printf("恭喜您中了四等奖,按任意键结束\n"); getch(); return 0; } if(c!=q&&d==r&&e==s&&f==t) { printf("恭喜您中了四等奖,按任意键结束\n"); getch();return 0; } //中了五等奖 if(a==o&&b==p&&c!=q) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(b==o&&c==p&&d!=q) {

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

getch();return 0; } if(c==o&&d==p&&e!=q) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(d==o&&e==p&&f!=q) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(e==o&&f==p) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(a==p&&b==q&&c!=r) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(a!=o&&b==p&&c==q&&d!=r) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(b!=o&&c==p&&d==q&&c!=r) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(c!=o&&d==p&&e==q&&f!=r) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(d!=o&&e==p&&f==q) {

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

} getch();return 0; if(a==q&&b==r&&c!=s) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(a!=p&&b==q&&c==r&&d!=s) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(b!=p&&c==q&&d==r&&e!=s) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(c!=p&&d==q&&e==r&&f!=s) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(d!=p&&e==q&&f==r) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(a==r&&b==s&&c!=t) { printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0; } if(a!=q&&b==r&&c==s&&d!=t) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0; } if(b!=q&&c==r&&d==s&&e!=t) { printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0;

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

}

if(c!=q&&d==r&&e==s&&f!=t)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0;

}

if(d!=q&&e==r&&f==s)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0;

}

if(a==s&&b==t)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch(); return 0;

}

if(a!=r&&b==s&&c==t)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0;

}

if(b!=r&&c==s&&d==t)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0;

}

if(c!=r&&d==s&&e==t)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch();

return 0;

}

if(d!=r&&e==s&&f==t)

{

printf("恭喜您中了五等奖,按任意键结束\n"); getch();return 0;

}

printf("谢谢惠顾,按任意键结束\n");

getch();

}

int main()

彩票兑奖系统和通讯录管理系统源代码VC++6.0亲测

{ } printf("请输入特等奖号码:\n"); scanf("%d%d%d%d%d%d%d",&o,&p,&q,&r,&s,&t,&u); printf("请输入一组兑奖号码,"); do{ printf("每组号码每个数范围为0~100:\n"); scanf("%d%d%d%d%d%d%d",&a,&b,&c,&d,&e,&f,&g); } while(a>100 || b>100 || c>100 || d>100 ||e>100|| f>100||g>100); judge();

本文来源:https://www.bwwdw.com/article/0dbe.html

Top