2022年C语言课设之交通处罚单管理系统 .pdf
《2022年C语言课设之交通处罚单管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言课设之交通处罚单管理系统 .pdf(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言课程设计交通处罚单管理一、题目要求交通处罚单涉及到车辆、驾驶员和开单交警的信息,还有交通处罚单号码、处罚时间等信息。功能:()要求可以输入、删除、浏览交通处罚单信息。()可以按车辆、驾驶员和开单交警查询。()统计某时间段某个驾驶员的交通处罚单数目及交通处罚单号码。二、需求分析交通处罚单信息用文件存储,提供文件的输入输出操作;要求可以输入、删除、浏览交通处罚单信息,因而要提供信息的输入、删除和显示操作;要实现按车辆、驾驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单以实现功能选择。三、总体设计名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -
2、 - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 21 页 - - - - - - - - - 交通处罚单管理系统信息输入信息删除信息浏览信息查询信息统计退出整个管理系统被设计为信息输入模块、信息删除模块、信息浏览模块、信息查询模块和信息统计模块等。四、详细设计1、主函数 主函数流程图 主函数程序 menu() /*主界面 */ int n,w; /*变量 n 保存选择菜单数字 ,w 判断输入的数字是否在功能菜单对应数字范围内 */ do printf(ttt欢迎来到交通处罚单管理系统!nn); printf(tt*MENU*nn); printf
3、(tttt1.信息输入 n); printf(tttt2.信息删除 n); printf(tttt3.信息浏览 n); printf(tttt4.信息查询 n); 显示一系列功能选项输入 n,判断 n 是否是 16 根据 n 的值调用各功能模块函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 21 页 - - - - - - - - - printf(tttt5.信息统计 n); printf(tttt6.退出n); puts(nntt*n); printf(tt请输入
4、您的操作 (1-6): bb); scanf(%d,&n); if(n6) /*对选择的数字作判断 */ w=1; getchar(); else w=0; while(w=1); /*选择功能 */ switch(n) case 1:shuru();break; case 2:shanchu();break; case 3:liulan();break; case 4:chaxun();break; case 5:tongji();break; case 6:exit(0); return(n); void main() /*主函数 */ menu(); 2、各功能模块设计(1) 、输入模块
5、 数据结构 采用结构体的形式,把处罚单的处罚单号、车牌号码、驾驶员姓名、开单警察 ID、处罚时间作为结构体成员,用结构体数组的形式存放若干条处罚单信息。struct fandan int num; /*处罚单号码 */ int chepai; /*车牌号码 */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 21 页 - - - - - - - - - char name8; /*驾驶员名字 */ int id; /*开单警察的信息 ID*/ char time11;
6、/*处罚时间为年月日排列 */ danN; /*dan500中每个数组元素对应一个处罚单信息*/ 注意 danN 中的 N为处罚单条数,本程序采用宏定义#define N 500 。 输入模块流程图 输入模块程序 void shuru() /*输入模块 */ int i,j; FILE *fp; if(fp=fopen(data.txt,w)=NULL) printf(无法打开文件 !n); exit(0); printf(n你要输入多少条处罚单信息:); scanf(%d,&j); for(i=0;ij;i+) 输入用户要输入处罚单纪录的条数j 能否打开文件退出i 从 0 到 j-1 依次输
7、入处罚单信息,并保存到文件中j 开始选择浏览还是返回主菜单名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 21 页 - - - - - - - - - printf(n请依次输入罚单信息 :n); printf(n罚单号车牌号驾驶员姓名警察 ID 处罚时间n); scanf(%3d %5d %8s %5d %11s,&dani.num,&dani.chepai,&dani.name,&dani.id,&dani.time); fprintf(fp,n%3d %5d %8s
8、 %5d %11s,dani.num,dani.chepai,dani.name,dani.id,dani.time); /* 输入罚单信息 */ printf(输入信息成功 !n); fclose(fp); printf_back(); (2) 、删除模块 删除模块流程图 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 21 页 - - - - - - - - - 删除模块程序 void shanchu() /*删除模块 */ int i,j,m,n; FILE *fp
9、; printf(请输入要删除的处罚单号 :); scanf(%d,&j); fp=fopen(data.txt,r); for(i=0;!feof(fp);i+) 打开文件统计出文件中的处罚单总数m 输入要删除的处罚单的处罚单号j=dani.n把此 i 的值赋给作为比较的变量n 关闭文件后再打开文件依次比较把不要求删除的罚单信息在文件中输入选择浏览还是返回主菜单名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 21 页 - - - - - - - - - fscanf(f
10、p,%3d %5d %8s %5d %11s,&dani.num,&dani.chepai,&dani.name,&dani.id,&dani.time); m=i; /*统计出文件中罚单总数 */ for(i=0;im;i+) if(j=dani.num) n=i; fclose(fp); fp=fopen(data.txt,w); for(i=0;im;i+) if(i!=n) fprintf(fp,n%3d %5d %8s %5d %11s,dani.num,dani.chepai,dani.name,dani.id,dani.time); /*把不要求删除的罚单信息在文件中输入*/ f
11、close(fp); printf_back(); (3) 、浏览模块 需求分析 该模块的功能是显示文件中所有的处罚但记录信息。 浏览模块流程图 打开文件逐条显示文件中的处罚单信息关闭文件选择浏览还是返回主菜单名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 21 页 - - - - - - - - - 浏览模块程序 void liulan() /*浏览模块 */ int i; FILE *fp; fp=fopen(data.txt,r); for(i=0;!feof(fp
12、);i+) fscanf(fp,%3d %5d %8s %5d %11s,&dani.num,&dani.chepai,&dani.name,&dani.id,&dani.time); printf(-n); printf(处罚单号 :%dn,dani.num); printf(车牌号码 :%dn,dani.chepai); printf(驾驶员姓名 :%sn,dani.name); printf(开单警察 ID:%dn,dani.id); printf(处罚时间 :%sn,dani.time); printf(-n); /*逐条输出文件信息 */ fclose(fp); printf_bac
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年C语言课设之交通处罚单管理系统 2022 语言 交通处 罚单 管理 系统
限制150内