资源描述:
《c语言版幸运数字课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、中国计量学院程序设计实践(报告)题目:二级学院___专 业班 级__姓 名学号___指导教师 _____年月日#include#include#include#include#defineLENsizeof(structNODE)//结构体structNODE{intno;charname[13];intluck_no;chardate[10];structNODE*next;};//全局变量intn,t,xgh;FILE*fp;structNODE*head,*p1,*p2;structNODE*p;
2、charc;chardym[13];//读取文件structNODE*creat(void){n=0;if((fp=fopen("data.txt","r"))==NULL){printf("cannotopen");exit(0);}p1=p2=(structNODE*)malloc(LEN);fscanf(fp,"%d%s%d%s",&p1->no,&p1->name,&p1->luck_no,&p1->date);head=NULL;while(!feof(fp)){8n=n+1;if(n==1)head=p1;elsep2->next=p1;p2=p1;p1=(structNOD
3、E*)malloc(LEN);fscanf(fp,"%d%s%d%s",&p1->no,&p1->name,&p1->luck_no,&p1->date);}p2->next=NULL;fclose(fp);return(head);}//输出表函数voidprint(structNODE*head){p=head;if(head!=NULL)do{printf("%d%s%d%s",p->no,p->name,p->luck_no,p->date);p=p->next;}while(p!=NULL);}//分析函数voidanalyse(structNODE*head){intt;p=
4、head;printf("幸运数字与出生日相同的人如下:");while(p!=NULL){t=(int)(p->date[8]-48)*10+(int)(p->date[9]-48);if(t==p->luck_no)printf("%d%s%d%s",p->no,p->name,p->luck_no,p->date);p=p->next;}system("pause");}8//统计函数voidtongji(structNODE*head){inta[10]={0};inti;p=head;while(p!=NULL){a[p->luck_no]++;p=p->next;}f
5、or(i=0;i<10;i++)printf("拥有幸运数字%d的人数是:%d",i,a[i]);printf("统计的总人数是:%d(人)",n+1);system("pause");}//打印函数voiddayin(structNODE*head){intfleo=0;p=head;printf("输入您感兴趣的人的姓名:=>");scanf("%s",dym);if(head!=NULL)do{if(strcmp(dym,p->name)==0){printf("%d%s%d%s",p->no,p->name,p->luck_no,p->date);fleo=1;}p=p-
6、>next;}while(p!=NULL);if(fleo==0)8printf("没有这个人");system("pause");}//添加函数structNODE*tianjia(structNODE*head){structNODE*newp,*p0;newp=(structNODE*)malloc(LEN);printf("输入某个人的各项信息,输入格式:编号姓名幸运数字日期");scanf("%d%s%d%s",&newp->no,&newp->name,&newp->luck_no,&newp->date);p1=head;p0=newp;if(head==NULL){h
7、ead=p0;p0->next=NULL;}else{while(((p0->no)>(p1->no))&&(p1->next!=NULL)){p2=p1;p1=p1->next;}if(p0->no<=p1->no){if(head==p1){head=p0;p0->next=p1;}else{p2->next=p0;p0->next=p1;}8}else{p1->next=p0;p0->next=NULL