交通处罚单管理系统(C程序设计)修改版

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

交通处罚单管理系统(C程序设计)修改版源代码:#includestdio.h#includestring.h#includestdlib.h#defineN100structPlist//处罚单{charvno[20];//车牌号chardname[20];//驾驶员姓名charpname[20];//交警姓名charpno[20];//交警编号charno[20];//处罚单编号chardate[20];//处罚日期}list[N];//处罚单数组voidinput();//输入模块voiddele();//删除模块voidbrowse();//浏览模块voidsearch();//查询模块voidcount();//统计模块voidmenu();//主菜单voidvno_search();//按车牌号查询voiddna_search();//按驾驶员姓名查询voidpna_search();//按开单交警姓名查询main(){menu();getchar();}voidmenu(){intn;intr;do{system(cls);printf(\n\t\t\t\t交通处罚单管理系统\n);printf(········································);printf(菜单:1-信息录入2-信息删除3-信息浏览4-信息查询5-信息统计6-退出系统\n);printf(········································);printf(请从输入数字选择相应的功能:);scanf(%d,&n);if(n1||n6){r=1;getchar();}elser=0;}while(r==1);switch(n){case1:input();break;case2:dele();break;case3:browse();break;case4:search();break;case5:count();break;case6:exit(0);}}voidinput(){FILE*fp;intnum;inti,j;if((fp=fopen(list.txt,r+))==NULL){if((fp=fopen(list.txt,w))==NULL){printf(文件打开或创建失败!\n);printf(\npressentertoreturnmenu\n);getchar();menu();}printf(\n请输入处罚单数量:);scanf(%d,&i);printf(\n\n);for(j=0;ji;j++){printf(输入第%d张处罚单的:\n,j+1);printf(\n车牌号、驾驶员姓名、交警姓名、交警号、处罚单号、日期(如20101112)\n);printf(\n注意:中间用空格隔开!\n);scanf(%s%s%s%s%s%s,&list[j].vno,&list[j].dname,&list[j].pname,&list[j].pno,&list[j].no,&list[j].date);}for(j=0;ji;j++){fprintf(fp,\n%s\t%s\t%s\t%s\t%s\t%s,list[j].vno,list[j].dname,list[j].pname,list[j].pno,list[j].no,list[j].date);}fclose(fp);printf(\n保存成功!);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}printf(\n请输入处罚单数量:);scanf(%d,&i);for(j=0;!feof(fp);j++)//读取文件{fscanf(fp,%s%s%s%s%s%s,&list[j].vno,&list[j].dname,&list[j].pname,&list[j].pno,&list[j].no,&list[j].date);}num=j+i;if(numN){printf(\n结构体数组数的N太小,请先修改N的值\n);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}printf(\n);for(j=0;ji;j++){printf(输入第%d张处罚单的:\n,j+1);printf(\n车牌号、驾驶员姓名、交警姓名、交警号、处罚单号、日期(如20101112)\n);printf(\n注意:中间用空格隔开!\n);scanf(%s%s%s%s%s%s,&list[j].vno,&list[j].dname,&list[j].pname,&list[j].pno,&list[j].no,&list[j].date);}for(j=0;ji;j++){fprintf(fp,\n%s\t%s\t%s\t%s\t%s\t%s,list[j].vno,list[j].dname,list[j].pname,list[j].pno,list[j].no,list[j].date);}fclose(fp);printf(\n保存成功!);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}voiddele(){intj;intnum;intf=-1;FILE*fp1,*fp2;chars1[20];if((fp1=fopen(list.txt,r))==NULL){printf(cannotopenfile\n);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}for(j=0;!feof(fp1);j++)//读取文件{fscanf(fp1,%s%s%s%s%s%s,&list[j].vno,&list[j].dname,&list[j].pname,&list[j].pno,&list[j].no,&list[j].date);}num=j;fclose(fp1);printf(请输入要删除的处罚单的编号\n);scanf(%s,s1);for(j=0;jnum;j++){if(strcmp(s1,list[j].no)==0){f=j;if(fnum-1){for(j=f;jnum-1;j++){strcpy(list[j].vno,list[j+1].vno);strcpy(list[j].dname,list[j+1].dname);strcpy(list[j].pname,list[j+1].pname);strcpy(list[j].pno,list[j+1].pno);strcpy(list[j].no,list[j+1].no);strcpy(list[j].date,list[j].date);}}if((fp2=fopen(list.txt,w))==NULL){printf(文件打不开!\n);printf(\npressentertoreturnmenu\n);getchar();menu();}for(j=0;jnum-1;j++)//保存文件{fprintf(fp2,\n%s\t%s\t%s\t%s\t%s\t%s,list[j].vno,list[j].dname,list[j].pname,list[j].pno,list[j].no,list[j].date);}fclose(fp2);printf(\n删除成功!\n);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}}if(f0){printf(\n没有找到该学号的记录:\n);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}}voidbrowse(){intj;intnum;FILE*fp;if((fp=fopen(list.txt,r))==NULL){printf(cannotopenfile\n);printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}for(j=0;!feof(fp);j++)//读取文件{fscanf(fp,%s%s%s%s%s%s,&list[j].vno,&list[j].dname,&list[j].pname,&list[j].pno,&list[j].no,&list[j].date);}fclose(fp);num=j;printf(\n已添加%d条记录\n\n,num);printf(车牌号驾驶员姓名交警姓名交警编号处罚单编号处罚日期\n);for(j=0;jnum;j++)//输出{printf(\n%s\t%s\t%s\t%s\t%s\t%s,list[j].vno,list[j].dname,list[j].pname,list[j].pno,list[j].no,list[j].date);}printf(\npressentertoreturnmenu\n);getchar();getchar();menu();}voidsearch(){intn;intr;do{system(cls);printf(\n请选择查询类型:\n\t1-按车牌号2-按驾驶员姓名3:按开单交警姓名4-返回主菜单\n);printf(\n请输入数字选择:);scanf(%d,&n);if(n1||n4){r=1;getchar();}elser=0;}while(r==1);switch(n){case1:vno_search();break;case2:dna_search();break;case3:pna_search();break;case4:menu();}}voidvno_search(){intf=-1;intnum;intj;charno[20];FILE*fp;if((fp=fopen(list.txt,r))==NULL){printf(文件打不开!\n);printf(\npressentertoreturnmenu\n);getchar();menu();}for(j=0;!feof(fp);j++)//读取文件{fscanf(fp,%s%s%s%s%s%s,&list[j].vno,&list[j].dname,&list[j].pname,&list[j].pno,&list[j].no,&list[j].date);}num=j;fclose(fp);printf(\n请输入车牌号:);scanf(%s,no);printf(\n罚单的信息为:\n\n);printf(车牌号驾驶员姓名交警姓名交警编号处罚单编号处罚日期\n);for(j=0;jnum;j++){if(strcmp(no,list[j].vno)==0){f=j;printf(\n%s\t%s\t%s\t%s\t%s\t%s,list[j].vno,list[j].dname,list[j].pname,list[j].pno,list[j].no,list[j].date);}}if(f0)printf(\n没有找到该班号的记录!\n);printf(\npressentertoreturnsubmenu\n);getchar();getchar();search();}voiddna_search(){intf=-1;intnum;intj;charname[20];FILE*fp;if((fp=fopen(list.txt,r))==NULL){printf(文件打不开!\n);printf(\npressente

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功