交通处罚单管理系统390430459.docx
《交通处罚单管理系统390430459.docx》由会员分享,可在线阅读,更多相关《交通处罚单管理系统390430459.docx(27页珍藏版)》请在三一办公上搜索。
1、 C语言设计实习报告 工程学院土木工程052097班 姓名: 彭文博 班号: 052097 学号: 20091000692 题目:交通处罚单管理系统指导老师: 梁老师 日期: 20110826 一,题目要求:【要求】:交通处罚单涉及到车辆,驾驶员和开单交警的信息,还有交通处罚单的号码,处罚时间等信息。【功能】:(1) 要求可以输入,删除,浏览交通处罚单信息。 (2)可以按车辆,驾驶员和开单交警查询。(3)统计某时间段某个驾驶员的交通处罚数目及交通处罚单号码。 二,需求分析:交通处罚单信息用文件存储,提供文件的输输出操作;要求可以输入,输出,删除,浏览交通处罚单信息,因而要提供输入,删除和显示操
2、作;要实现按车辆,驾驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单以实现功能选择。 三,总体设计: 整个管理系统被设计为信息输入模块,信息删除模块,信息浏览模块,信息查询模块,信息统计模块。交通处罚单管理系统 统计输入查找删除退出四,详细设计及实现: 1,处罚单管理系统界面函数 此函数包括的功能是建立新的罚单,按司机姓名查询罚单并浏览相关信息,按交警姓名查询罚单并浏览相关信息,按罚单号查询罚单并浏览相关信息,删除罚单,数据统计和退出处罚单管理系统。void Menu()printf(ntttt交通处罚单管理系统n); printf(); printf( 菜单: 1-信息
3、录入2-信息删除3-信息浏览4-信息查询5-信息统计6-退出系统n); printf(); printf(请从输入数字选择相应的功能:);2,各功能模块设计(1)创建新的交通处罚单处罚单包含的内容有处罚单号,车牌号,司机姓名,交警姓名,和处罚日期,因此相应的函数也应包含这些内容,在这个函数所控制的操作会依次提示输入以上内容。特别的,罚单号不能有重复,若输入的罚单号有重复,操作界面会提示罚单好重复,请重新输入。创建新的罚单处罚日期交警姓名罚单号车牌号司机姓名void input() FILE*fp; int num; int i,j; if(fp=fopen(list.txt,r+)=NULL)
4、 if(fp=fopen(list.txt,w)=NULL) printf(文件打开或创建失败!n); printf(npress enter to return menun); getchar(); menu(); printf(n请输入处罚单数量:); scanf(%d,&i); printf(nn); for(j=0;ji;j+) printf(输入第%d张处罚单的:n,j+1); printf(n 车牌号、驾驶员姓名、交警姓名、交警号、处罚单号、日期(如)n); printf(n注意:中间用空格隔开!n); scanf(%s%s%s%s%s%s,&listj.vno,&listj.dn
5、ame,&listj.pname,&listj.pno,&listj.no,&listj.date); for(j=0;ji;j+) fprintf(fp,n%st%st%st%st%st%s,listj.vno,listj.dname,listj.pname,listj.pno,listj.no,listj.date); fclose(fp); printf(n保存成功!); printf(npress enter to return menun); getchar(); getchar(); menu(); (2)按司机姓名查询罚单:先输入命令2,再输入待查找司机姓名.在这里函数会在记录在
6、案的处罚单进行循环查找,如果有该司机的罚单记录,就会相应显示在屏幕上。如果没有该司机的处罚记录,就会打印:没有相关信息。void dna_search() int f=-1; int num; int j; char name20; FILE*fp; if(fp=fopen(list.txt,r)=NULL) printf(文件打不开!n); printf(npress enter to return menun); getchar(); menu(); for(j=0;!feof(fp);j+) /读取文件 fscanf(fp,%s%s%s%s%s%s,&listj.vno,&listj.d
7、name,&listj.pname,&listj.pno,&listj.no,&listj.date); num=j; fclose(fp); printf(n请输入驾驶员的姓名:); scanf(%s,name); printf(n罚单的信息为:nn); printf(车牌号 驾驶员姓名交警姓名交警编号处罚单编号处罚日期n); for(j=0;jnum;j+) if(strcmp(name,listj.dname)=0) f=j; printf(n%st%st%st%st%st%s,listj.vno,listj.dname,listj.pname,listj.pno,listj.no,li
8、stj.date); if(f0) printf(n没有找到该班号的记录!n); printf(npress enter to return sub menun); getchar(); getchar(); search();(3)按交警姓名查询罚单:先输入命令3,再输入待查找交警姓名.在这里函数会在记录在案的处罚单进行循环查找,如果有该交警所开的的罚单记录,就会相应显示在屏幕上。如果没有该交警开的处罚记录,就会打印:没有相关信息。其中void pna_search() int f=-1; int num; int j; char name20; FILE*fp; if(fp=fopen(l
9、ist.txt,r)=NULL) printf(文件打不开!n); printf(npress enter to return menun); getchar(); menu(); for(j=0;!feof(fp);j+) /读取文件 fscanf(fp,%s%s%s%s%s%s,&listj.vno,&listj.dname,&listj.pname,&listj.pno,&listj.no,&listj.date); num=j; fclose(fp); printf(n请输入开单交警的姓名:); scanf(%s,name); printf(n罚单的信息为:nn); printf(车牌
10、号 驾驶员姓名交警姓名交警编号处罚单编号处罚日期n); for(j=0;jnum;j+) if(strcmp(name,listj.pname)=0) f=j; printf(n%st%st%st%st%st%s,listj.vno,listj.dname,listj.pname,listj.pno,listj.no,listj.date); if(f0) printf(n没有找到该班号的记录!n); printf(npress enter to return sub menun); getchar(); getchar(); search(); (4)按车牌号查询罚单:先输入命令1,再输入待
11、查找车牌号码.在这里函数也会对记录在案的处罚单进行循环查找,如果有该车牌号记录,就会相应显示在屏幕上。如果没有该车牌号的处罚信息,就会打印:没有相关信息。void vno_search() int f=-1; int num; int j; char no20; FILE*fp; if(fp=fopen(list.txt,r)=NULL) printf(文件打不开!n); printf(npress enter to return menun); getchar(); menu(); for(j=0;!feof(fp);j+) /读取文件 fscanf(fp,%s%s%s%s%s%s,&lis
12、tj.vno,&listj.dname,&listj.pname,&listj.pno,&listj.no,&listj.date); num=j; fclose(fp); printf(n请输入车牌号:); scanf(%s,no); printf(n罚单的信息为:nn); printf(车牌号 驾驶员姓名交警姓名交警编号处罚单编号处罚日期n); for(j=0;jnum;j+) if(strcmp(no,listj.vno)=0) f=j; printf(n%st%st%st%st%st%s,listj.vno,listj.dname,listj.pname,listj.pno,listj
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交通处 罚单 管理 系统 390430459
链接地址:https://www.31ppt.com/p-2057850.html