C语言程序设计之交通处罚单管理系统报告(内含代码).doc

上传人:土8路 文档编号:10099774 上传时间:2021-04-19 格式:DOC 页数:22 大小:774.50KB
返回 下载 相关 举报
C语言程序设计之交通处罚单管理系统报告(内含代码).doc_第1页
第1页 / 共22页
C语言程序设计之交通处罚单管理系统报告(内含代码).doc_第2页
第2页 / 共22页
C语言程序设计之交通处罚单管理系统报告(内含代码).doc_第3页
第3页 / 共22页
C语言程序设计之交通处罚单管理系统报告(内含代码).doc_第4页
第4页 / 共22页
C语言程序设计之交通处罚单管理系统报告(内含代码).doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《C语言程序设计之交通处罚单管理系统报告(内含代码).doc》由会员分享,可在线阅读,更多相关《C语言程序设计之交通处罚单管理系统报告(内含代码).doc(22页珍藏版)》请在三一文库上搜索。

1、C语言程序设计 姓名:张强强 学号:20121003695 班序号:011121前言: C语言是近年来国内得到迅速推广使用的一种计算机语言。C语言程序设计课程是计算机专业和信息管理专业的核心专业基础课,无论是计算机专业还是非计算器专业的学生,学习好C语言是非常重要的。一.交通处罚单管理 要求: 交通处罚单涉及到车辆,驾驶员和开单交警的信息,还有交通处罚单的号码,处罚时间等信息。 功能:(1)要求可以输入,删除,浏览交通处罚单信息。(2) 可以按车辆,驾驶员和开单交警进行查询。(3) 统计某时间段某个驾驶员的交通处罚数目及交通处罚单号码。(一)需求分析交通处罚单信息用文件存储,提供文件的输入输出

2、操作;要求可以输入,输出,删除,浏览交通处罚单信息,因而要提供输入,删除和显示操作;要实现按车辆,驾驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单以实现功能选择。(二) 总体设计整个管理系统被设计为信息输入模块,信息删除模块,信息浏览模块,信息查询模块和信息统计模块等。如下图:交通处罚单管理信息输入信息删除信息浏览信息查询信息统计按车辆查询按驾驶员查询按交警查询(三) 详细设计1. 主函数实现的是显示菜单以及函数调用,其中各功能模块用菜单方式选择。程序:int main() int n; /*变量n保存选择菜单数字*/ printf(nn) printf ( *菜单*n

3、); printf ( * *n); printf ( * 1.输入 2.删除 *n); printf ( * *n); printf ( * 3.浏览 4.查询 *n); printf ( * *n); Printf ( * 5.统计 6.退出*n); printf ( * *n); printf(*n); printf(请选择功能菜单: bb); scanf(%d,&n); if (n7) n=7; switch (n) /*选择功能*/ case 1:shuru();liulan();main();break; /*输入模块*/ case 2:shanchu();liulan();mai

4、n();break; /*删除模块*/ case 3:liulan();main();break; /* 浏览模块*/ case 4:chaxun();main();break; /* 查询模块*/ case 5:tongji();main();break; /* 统计模块*/ case 6:exit(0); break; /*退出*/ case 7: printf(errorn); 2. 信息储存函数。void save()FILE *fp;int i;if(fp=fopen(fadan.txt,w)=NULL)printf(不能打开);return;for(i=0;iM;i+)if(fwr

5、ite(&TPBi,sizeof(struct tranficpunishbill),1,fp)!=1)printf(出错);fclose(fp);3. 信息读取函数。 FILE*fp;if(fp=fopen(fadan.txt,r)=NULL)printf(不能打开); exit(0);for(i=0;iN;i+)fscanf(fp,%s%s%s%s%s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);fclose(fp);4. 信息从键盘输入函数。void shuru()int j;printf(请输入数据:n);for(j=0;jM;j+)sc

6、anf(%s%s%s%s%s,TPBj.cp,TPBj.jz,TPBj.kdjj,TPBj.cfd,TPBj.cfsj);save(); return 0;5. 信息显示函数。void liulan() FILE*fp; int i,j;if(fp=fopen(fadan.txt,r+)=NULL)printf(不能打开); exit(0);system(cls);printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n);for(i=0,j=0;iN;i+,j+) fscanf(fp,%s%s%s%s%s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.

7、cfsj);printf(%3.2s%10.2s%10.2s%12.2s%12.2s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);6. 记录删除函数。void shanchu()FILE*fp;int i,k,j=-1;char m10,d10,f10;if(fp=fopen(fadan.txt,r)=NULL) /打开文件printf(不能打开); exit(0);for(i=0;iN;i+) /读取文件到结构体中fscanf(fp,%s%s%s%s%s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj)

8、;fclose(fp); /关闭文件system(cls);printf(删除模块:);printf(nnn);printf( *n);printf( * *n); printf( * *n); printf( * *n); printf( * 1.车牌号 2.驾照号 3.开单交警号 *n); printf( * *n); printf( * *n); printf( * *n);printf( *n);printf(nn请输入删除选项:);scanf(%d,&k);if(k=1)printf(请输入车牌号:); scanf(%s,m); for(i=0;iN;i+)if(strcmp(m,T

9、PBi.cp)=0)j=i; else if(k=2)printf(请输入驾照号:); scanf(%s,d); for(i=0;iN;i+) if(strcmp(d,TPBi.jz)=0) j=i;else if(k=3)printf(请输入开单交警号:); scanf(%s,f); for(i=0;iN;i+) if(strcmp(f,TPBi.kdjj)=0) j=i; if(j!=-1) /在结构体中运算 for(i=j;iN&j!=-1;i+) TPBi=TPBi+1; N=N-1; else if(j=-1) printf(不能打开); if(fp=fopen(fadan.txt,

10、w)=NULL) /*打开文件*/ printf(不能打开); exit(0); for(i=0;iN;i+) /*写入文件*/ fprintf(fp,n%5s%10s%13s%11s%12s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj); fclose(fp); /*关闭文件*/ 7. 信息查询函数。void chaxun()int i,k,t=0; char m10,d10,f10; FILE*fp;if(fp=fopen(fadan.txt,r+)=NULL) /打开文件printf(不能打开); exit(0);for(i=0;iN;i+)

11、 /读取文件 fscanf(fp,%s%s%s%s%s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);fclose(fp); /关闭文件system(cls); printf(查询模块);printf(nnn);printf( *n);printf( * *n); printf( * *n); printf( * *n); printf( * 1.车牌号 2.驾照号 3.开单交警号 *n); printf( * *n); printf( * *n); printf( * *n);printf( *n);printf(nn请输入查询选项:);scan

12、f(%d,&k);/system(cls); if(k=1) printf(请输入车牌号:); scanf(%s,&m);system(cls); for(i=0;iN;i+) if(strcmp(m,TPBi.cp)=0) printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n); printf(%5s%10s%13s%11s%12sn,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);t+; else if(strcmp(d,TPBi.jz)!=0) printf(n); else if (k=2)printf(请输入驾照号:); scan

13、f(%s,&d);system(cls); for(i=0;iN;i+) if(strcmp(d,TPBi.jz)=0) printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n); printf(%5s%10s%13s%11s%12sn,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);t+; else if(strcmp(d,TPBi.jz)!=0) printf(n); else if (k=3)printf(请输入开单交警号:); scanf(%s,&f);system(cls); for(i=0;iN;i+) if(strcmp(f,T

14、PBi.kdjj)=0) printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n); printf(%5s%10s%13s%11s%12sn,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);t+; else if(strcmp(f,TPBi.kdjj)!=0) printf(n); 8. 信息统计函数。此函数实现的功能为查询一段时间内某司机违章次数以及罚单号。void tongji()int i,k,t=0; char m10,d10,f10; FILE*fp;if(fp=fopen(fadan.txt,r+)=NULL) /打开文件prin

15、tf(不能打开); exit(0);for(i=0;iN;i+) /读取文件 fscanf(fp,%s%s%s%s%s,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);fclose(fp); /关闭文件system(cls); printf(统计模块);printf(nnn);printf( *n);printf( * *n); printf( * *n); printf( * *n); printf( * 1.车牌号 2.驾照号 3.开单交警号 *n); printf( * *n); printf( * *n); printf( * *n);pri

16、ntf( *n);printf(nn请输入统计选项:);scanf(%d,&k);/system(cls); if(k=1) printf(请输入车牌号:); scanf(%s,&m);system(cls); for(i=0;iN;i+) if(strcmp(m,TPBi.cp)=0) printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n); printf(%5s%10s%13s%11s%12sn,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj); t+;else if(strcmp(d,TPBi.jz)!=0) printf(n);pri

17、ntf(n*总罚单数=%d*n,t); else if (k=2)printf(请输入驾照号:); scanf(%s,&d);system(cls); for(i=0;iN;i+) if(strcmp(d,TPBi.jz)=0) printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n);printf(%5s%10s%13s%11s%12sn,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);t+;else if(strcmp(f,TPBi.kdjj)!=0) printf(n); printf( n*总罚单数=%d*n,t); else if

18、(k=3)printf(请输入开单交警号:); scanf(%s,&f);system(cls); for(i=0;iN;i+) if(strcmp(f,TPBi.kdjj)=0) printf(车牌号 驾照号 开单交警号 处罚单号 处罚时间n);printf(%5s%10s%13s%11s%12sn,TPBi.cp,TPBi.jz,TPBi.kdjj,TPBi.cfd,TPBi.cfsj);t+;else if(strcmp(f,TPBi.kdjj)!=0) printf(n); printf( n*总罚单数=%d*n,t); (四) 上机操作主菜单界面:从键盘输入数据:显示所有信息:删除指

19、定的记录:删除后查询按车牌号查询:查询结果:按驾照号查询:查询结果:按开单交警号查询:查询结果:统计一段时间内某辆车违章次数以及罚单号:统计结果:总结:通过C语言程序设计的上机实习,我进一步了解和运用结构化程序设计的思维方法。C语言二级考试已在眼前了,而这次C语言实习顺利结束真正意义上为C语言二级考试打好了基础。而且这次实习真正意义上将所学知识运用到了实际中。在这次实习中,我也学到了动态调试等一些新知识,并且发现任何一处看似不起眼的微小错误很可能导致程序无法运行或是运行结果错误。我在这次实习中最大的收获就是学会了分析和排除错误,而这恰恰是从书本上学不到的。想要进一步提高C语言程序设计的水平,还需要不断的努力。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1