您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > C语言课程设计-身份证信息管理
安徽师范大学物理与电子信息学院《》课程设计报告题目身份证信息管理学号姓名年级专业09级电子(2)班指导教师完成日期2010年06月30日安徽师范大学物理与电子信息学院CollegeofPhysicsandElectronicInformation,AnhuiNormalUniversity安徽师范大学物理与电子信息学院一.实践目的和要求加深对《C语言》课程所学知识的理解,进一步巩固C语言语法规则。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备解决综合性实际问题的能力。二.实践内容在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用,包括时间函数、绘图函数,以及文件的读写操作等。三.实验要求1).具备添加、删除功能;2).具备多种查询功能:按年龄、出生日期等;3).具备统计功能,能统计某年龄段的人数;4).在此基础上,可进行文件操作。四.实验内容1.程序功能:能够输入某人的姓名,年龄,身份证号,家庭住址等;输入后可以显示信息;能够删除信息;可以添加信息并且可以按年龄段查找;对输入信息可以保存并且以后可以查到此信息。2.程序清单:安徽师范大学物理与电子信息学院#includestdio.h#includestring.h#defineSIZE100#defineLENGTHsizeof(structperson)structperson{charIDNumber[25];charname[20];intage;charbirthday[10];charsex[5];charaddress[100];}per[SIZE];voidmain(){intinput(intn);voidalter(intn);voidadd(intn);voiddelete(intn);voidstatistic(intn);voidoutput();voidsave();intn,qq;printf(\t\t\t*************************************\n);printf(\t\t\tShenFenZhengXinXiGuanLiXiTong\n);printf(\t\t\t*************************************\n\t\t\t\t-------Juminshenfenzheng\n);printf(\n\t\t\t\t1.input\n\n\t\t\t\t2.alter\n\n\t\t\t\t3.add\n\n\t\t\t\t4.delete\n\n\t\t\t\t5.statistic\n\n\t\t\t\t6.output\n\n\t\t\t\t7.exit\n);printf(Pleaseenterthenumberyouwanttochoose:);scanf(%d,&qq);switch(qq){case1:input(qq);break;case2:alter(qq);break;case3:add(qq);break;case4:delete(qq);break;case5:statistic(qq);break;case6:output(qq);break;case7:exit(qq);break;default:printf(error\n);}}intinput(intn){intj;安徽师范大学物理与电子信息学院printf(Howmanypersonsdoyouwanttoinput:);scanf(%d,&n);if(nSIZE)printf(error\n);elseif(n=SIZE){for(j=0;jn;j++){printf(Pleaseinputthe%dthperson'sinformation\n,j+1);printf(IDNumber:);scanf(%s,per[j].IDNumber);printf(\n);printf(Thename:);scanf(%s,per[j].name);printf(\n);printf(Theage:);scanf(%d,&per[j].age);printf(\n);printf(Thebirthday:);scanf(%s,per[j].birthday);printf(\n);printf(Sex:);scanf(%s,per[j].sex);printf(\n);printf(Theaddress:);scanf(%s,per[j].address);printf(\n);save();}}}voidalter(intn){inti,t,m;charnum[20];FILE*fp;if((fp=fopen(zhaojie.txt,rb))==NULL){printf(cannotopenfile\n);return;}for(m=0;mn;m++)fread(&per[m],LENGTH,1,fp);printf(Pleaseinputtheperson'sIDNumber:);scanf(%s,num);for(t=0;tn;t++){if(strcmp(per[t].IDNumber,num)==0)i=t;}printf(pleaseinputthe%dthperson'sinformation,i+1);printf(TheIDNumber:);scanf(%s,per[i].IDNumber);安徽师范大学物理与电子信息学院printf(\n);printf(TheName:);scanf(%s,per[i].name);printf(\n);printf(Theage:);scanf(%d,&per[i].age);printf(\n);printf(Thebirthday:);scanf(%s,per[i].birthday);printf(\n);printf(Thesex:);scanf(%s,per[i].sex);printf(\n);printf(TheAddress:);scanf(%s,per[i].address);printf(\n);fwrite(&per[i],LENGTH,1,fp);fclose(fp);}voidadd(intn){inti,m,t;FILE*fp;if((fp=fopen(zhaojie.txt,rb))==NULL){printf(cannotopenfile\n);return;}for(t=0;tn;t++)fread(&per[t],LENGTH,1,fp);printf(Howmanypersonsdoyouwanttoadd:);scanf(%d,&i);n=n+i;if(nSIZE)printf(error\n);elsefor(m=n-i;mn;m++){printf(pleaseinputaperson'simformation:\n);printf(TheIDNumber:);scanf(%s,per[m].IDNumber);printf(\n);printf(TheName:);scanf(%s,per[m].name);printf(\n);printf(Theage:);scanf(%d,&per[m].age);printf(\n);printf(Thebirthday:);scanf(%s,per[m].birthday);安徽师范大学物理与电子信息学院printf(\n);printf(Thesex:);scanf(%s,per[m].sex);printf(\n);printf(TheAddress:);scanf(%s,per[m].address);printf(\n);fwrite(&per[m],LENGTH,1,fp);fclose(fp);}}voiddelete(intn){charName[20];inti,t,m;FILE*fp;if((fp=fopen(zhaojie.txt,rb+))==NULL){printf(cannotopenthefile\n);return;}for(m=0;mn;m++)fread(&per[m],LENGTH,1,fp);printf(pleaseinputtheperson'snamethatyouwanttodelete:);scanf(%s,Name);for(i=0;in;i++){if(strcmp(per[i].name,Name)==0)t=i;}for(;per[t].name!='\0';t++){per[t]=per[t+1];}fclose(fp);}voidoutput(intn){inti,t;charName[20];FILE*fp;if((fp=fopen(zhaojie.txt,rb))==NULL){printf(cannotopenthefile\n);return;}printf(pleaseinputtheperson'snamewhoseimformatinyouwanttocook);scanf(%s,Name);for(i=0;in;i++){if(strcmp(per[i].name,Name)==0)t=i;}{fread(&per[t],LENGTH,1,fp);printf(IDNumber:%s\nname:%s\nage:%d\nbirthday:%s\nSex:%s\naddress:%s\n,per[t].IDNumber,per[t].name,per[t].age,per[t].birthday,per[t].sex,per[t].address);}fclose(fp);}voidstatistic(intn)安徽师范大学物理与电子信息学院{inta,b,c,i,total=0;FILE*fp;printf(Entertheperson'sage:\n);scanf(%d,&c);printf(Pleaseinputtheagefromatob:);if((fp=fopen(zhaojie.txt,rb))==NULL){printf(cannotopenfile\n);return;}for(i=0;in;i++)fread(&per[i],LENGTH,1,fp);scanf(%d,%d,&a,&b);for(i=0;in;i++)if(per[i].age=a&&per[i].age=b){printf(IDNumber:%s\nname:%s\nage:%d\nSex:\naddress:%s\n,per[i].IDNumber,per[i].name,per[i].age,per[i].birthday,per[i].sex,per[i].address);total++;}}voidsave(){intj;FILE*fp;if((fp=fopen(zhaojie.txt,wb))==NULL){printf(cannotopenthefile\n);return;}for(j=0;jSIZE;j++)if(fwrite(&per[j],LENGTH,1,fp)!=1)printf(filewriteerror\n);fclose(fp);}安徽师范大学物理与电子信息学院四.流程图开始输入某人的姓名年龄家庭住址等添加一个人的信息对学生年龄按段进行统计按姓名删除显示所有人信息按姓名查找并显示全部居民信息N不删除Y删除Quit结束安徽师范大学物理与电子信息学院安徽师范大学物理与电子信息学院安徽师范大学物理与电子信息学院物理与电子信息学院课程设计评定意见指导教师评语主要内容包括:设计报告内容的完整性和完成情况
本文标题:C语言课程设计-身份证信息管理
链接地址:https://www.777doc.com/doc-4436933 .html