《C语言课堂设计报告违规记分管理程序》由会员分享,可在线阅读,更多相关《C语言课堂设计报告违规记分管理程序(20页珍藏版)》请在金锄头文库上搜索。
1、 C语言课堂设计报告 违规记分管理程序一、程序设计题目及要求【题目描述】请设计一个驾驶员违规记分管理程序。驾驶员信息包括:驾驶员编号、姓名、性别、身份证号、准驾车型、违规时间(含年、月、日)、违规地点、违规行为、处罚金额、违规次数、累积扣分(假设每次扣2分)、是否缴款等。该程序应该具有下列基本功能:(1) 录入全部驾驶员的信息,驾驶员编号按顺序生成;(2) 显示全部驾驶员的信息;(3) 添加一个驾驶员的信息;(4) 给定驾驶员编号,修改此编号的驾驶员信息,要求有修改确认; (5) 给定驾驶员姓名,删除此驾驶员的信息,要求有删除确认;(6) 给定驾驶员姓名,显示该驾驶员的违规信息、累积扣分以及是
2、否缴款; (7) 给定一个日期(含年、月、日),显示该日违规的驾驶员姓名;(8) 给定一个值,显示违规累积扣分超过该值的驾驶员信息;(9) 统计某一时间段内所有驾驶员的总罚金数量。(10) 按累计扣分对驾驶员信息排序。(11)自己提供一些按各类信息进行排序、统计的功能(自己发挥)。【题目要求】(1) 按照分析、设计、编码、调试和测试的软件开发过程完成这个应用程序;(2) 为各项操作功能设计一个菜单。应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目。【输入要求】应用程序运行后,在屏幕上显示一个菜单。用户可以根据需求,选定相应的操作项目。进入每个操作后(若需要,还可显示子菜
3、单),根据应用程序的提示信息,从键盘输入相应的信息。要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。【输出要求】(1) 应用程序运行后,要在屏幕上显示一个菜单;(2) 要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。 (3)输出的结果要清晰美观,以表格形式上下对齐。【提示】使用结构类型和一维数组,用来保存软件信息。二、应用程序简介1应用程序功能此程序功能包括输入,输出,添加信息,查找信息,和删除等等、1、应用程序功能: 此应用程序主要实现对参赛歌手信息的输入、输出;评委打分;添加歌手信息;对歌手信息的修改、删除等等。2
4、、应用程序执行环境:此应用程序在WINTC2.0的环境下运行。启动时只需打开工作空间,执行“dale.EXE ”文件。3、程序内容说明:程序界面采取光标和键盘操作,无需采用鼠标操作。如需退出该程序,请在主界面输入“0”退出。4、操作说明:输入的内容请按程序界面要求操作,请不要输入特殊符号,不得私自修改程序所在目录下信息文件。5、 在运行过程中,无特殊指令要求。三、程序设计文档内容1该程序包含main以及17个子程序:如下,menu,password,input,output,add,change,delete,browse,searchdate,searchtotalscore,sort,se
5、arch0fen,search12fen,Searchtype,searchplace,searchaction,searchfine:这些分别实现菜单,司机信息的输入,司机信息的输出,添加司机的信息,改变司机的信息,删除部分司机的信息,浏览的功能,按日期查找,按总分查找,分类,按0,12分查找,按类型查找,按地点查找,按行为查找,按罚款查找。2程序流程图 mainpassword Input outputaddchangedeletebrowsesearchdatesearchtotalscoresortSearch0fenSearch12fen searchtypesearchplaces
6、earchactionsearchfen3程序源文件#include#include#include#define N 7typedef struct int year; int month; int day; DATE;typedef struct driver int No; char name20; char sex7; char id20; char type10; DATE time; char place100; char action100; float fine; int times; int totalscore; char yn10; DRI;void password()
7、;void menu();void input(DRI d);void output(DRI d);void add(DRI d);void change(DRI d);void delete(DRI d);void browse(DRI d);void searchdate(DRI d);void searchtotalscore(DRI d);void sort(DRI d);void search0fen(DRI d);void search12fen(DRI d);void searchtype(DRI d);void searchplace(DRI d);void searchact
8、ion(DRI d);void searchfine(DRI d);main() DRI dN+1; int choice; password(); do menu(); printf(Choice:); scanf(%d,&choice); switch(choice) case 1: input(d);break; case 2: output(d);break; case 3: add(d);break; case 4: change(d);break; case 5: delete(d);break; case 6: browse(d);break; case 7: searchdat
9、e(d);break; case 8: searchtotalscore(d);break; case 9: sort(d);break; case 10: search0fen(d);break; case 11: search12fen(d);break; case 12: searchtype(d);break; case 13: searchplace(d);break; case 14: searchaction(d);break; case 15: searchfine(d);break; clrscr(); while(choice!=0); printf(Thank youn)
10、; void menu() printf(n= MENU =n); printf( 1 .Input informationn); printf( 2 .Show all informationn); printf( 3 .Add a new informationn); printf( 4 .Change an informationn); printf( 5 .Delete an informationn); printf( 6 .View a by daten); printf( 7 .Search informationn); printf( 8 .Search by zongfenn
11、); printf( 9 .Range by zongfenn); printf( 10 .Search 0 fenn); printf( 11 .Search 12 fenn); printf( 12 .Search by carn); printf( 13 .Search by placen); printf( 14 .Search by behaviourn); printf( 15 .Search drivers who havent paid the finen); printf( 0 .Exitn);void password() char password=liule0; cha
12、r enter100; while(1) printf(Enter the password(5 wei):); gets(enter); if(strcmp(enter,password)=0) printf(Succeedn); system (pause); break; else printf(errorn); clrscr();void input(DRI d) int i; char temp10=0; printf(nEnter informations(name sex id type year month day place action fine times totalscore pay)n); for(i=0;iN;i+) di.No=i+1; printf(input the name:); scanf(%s,di.name); printf(input the sex:); scanf(%s,di.sex); printf(input the id:); scanf(%s,di.id); printf(input the type:); scanf(%s,di.type); printf(input the date:); scanf(%d%d%d,&di.time.year,&di.time