ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:580.50KB ,
资源ID:10719105      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-10719105.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(高速公路收费系统C语言课程设计报告.doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

高速公路收费系统C语言课程设计报告.doc

1、C 语言程序设计课程设计报告设计题目:高速公路计费系统设计学 号 班 级 姓 名 完成方式:(单选) 自我评分:(单选) 独立完成 优秀 参考他人工作的基础上完成 良好 在他人的帮助下完成 中等 完整拷贝他人成果 及格 不及格2010 年 3 月 27 日2题目:高速公路计费系统设计功能:在某高速公路出口收费处,对三种类型的车辆计费,大型车每公里0。5 元,中型车每公里 0。4 元,小型车每公里 0。3 元,来车验条,乘公里数即得该收的款项。在交班时要统计出总数。分步实施:1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2、完成最低要求:建立一个只有三个入口的计费系统,并能进

2、行统计计算,打印出报表;3、进一步要求:完成任意多个入口的通用系统。要求:1、用 C 语言实现程序设计;2、利用结构体数组实现信息的数据结构设计;3、系统的各个功能模块要求用函数的形式实现;4、界面友好(良好的人机交互) ,程序加必要的注释。课程设计实验报告要求:1、预习报告:题目、课程设计任务、数据结构、程序的总体设计(算法) 、模块划分 。2、实验总结报告:流程图、主要源程序代码(需打印) 、测试情况及调试中问题与解决方案、小结等。一、总体设计1、 仔细阅读系统要求,首先将此系统化分为如下模块(1)显示模块,是人机交互的界面,可引导操作员来完成程序的运行。比如:系统主界面(主菜单),包含了

3、输入车辆信息,显示车辆信息,显示车辆总数,退出程序四个可选操作,操作员可直观地完成信息处理。(2)文件模块,可执行文件建立、文件保存、文件打开和文件写入等命令来操作处理和放置车辆信息的文件。(3)输入模块是操作员向程序输入的模块,可输入操作内容和车辆的有关信息,比如:输入车牌号、车辆类型、进入口、时间,程序自动计算得出车辆应缴纳的费用并保存在文件。(4)输出模块,通过程序计算,向操作员输出车辆信息、数据等(5)退出模块, 可用一个函数 exit()来实现,首先将信息保存到文件中,然后退出程序二、详细设计1、界面设计此系统界面采用符号和数字化菜单设计。主界面设计如下:欢迎使用高速公路收费系统主菜

4、单1.输入车辆信息2.显示车辆信息3.显示车辆总数4.保存退出系统请输入数字选择操作类型:32、流程图43、数据结构设计:程序设计中用到的结构体类型:车辆信息结构体类型:struct vehicle/*车辆信息*/char num10000;/*车牌号 */char variety4;/*车辆类型 a,b,c(大,中,小 )*/int entime;/*进入时间 */char enter3;/*进入口 1,2,3分别为各个入口*/4、程序代码#include#include#include#include #define N 10/*定义三个入口到出口的路程分别是 l1 l2 l3*/stru

5、ct vehicle/*车辆信息*/char num10000;/*车牌号*/char variety4;/*车辆类型 a,b,c(大,中,小)*/int entime;/*进入时间*/char enter3;/*进入口 1,2,3分别为各个入口*/veN;int count=0;FILE *fp;/*函数声明*/void menu();/*主菜单*/void input();5/*输入函数*/void show();void all();void readfile();/*从文件导入*/void writefile();/*写入*/void main() readfile();while(1

6、)menu();void readfile()/*从文件导入 */ if(fp=fopen(“vehicle.txt“,“r“)=NULL) printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* 文件为空,请添加信息 *n“); printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);pri

7、ntf(“t“);printf(“*n“);if(fp=fopen(“vehicle.txt“,“w“)=NULL) /*只写*/printf(“n“);printf(“n“);6printf(“n“);printf(“n“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* 建立失败 *n“); printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);pr

8、intf(“*n“);exit(0); /*正常退出*/ else printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* 文件已建立 *n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“*Please press any key to g

9、et to mainmenu! *n“); printf(“t“);printf(“t“);printf(“* *n“);7printf(“t“);printf(“t“);printf(“*n“);getch(); return; exit(0); fseek(fp,0,2); /*文件指针 fp 指到到文件末尾*/ if(ftell(fp)0) /*文件不为空*/ fseek(fp,0,0);/*文件指针指到文件开始位置*/ for(count=0;!feof(fp)count+); printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf

10、(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* 文件导入成功 *n“); printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“*Please press anykey to get back to mainmenu! *n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“

11、);printf(“*n“);getch(); 8return; printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* 已成功打开文件! *n“); printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“*Please press anykey to

12、 get back to mainmenu! *n“); printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“*n“);getch(); return; void menu()system(“cls“);/*清屏*/char n;printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“t“);printf(“t*n“);printf(“n“);printf(“t“);printf(“t* 欢迎使用高速公路收费系统 *n“);printf(“n“);9

13、printf(“t“);printf(“t* 主菜单 *n“); printf(“n“);printf(“t“);printf(“t* 1.输入车辆信息 *n“);printf(“n“);printf(“t“);printf(“t* 2.显示车辆信息 *n“);printf(“n“);printf(“t“);printf(“t* 3.显示车辆总数 *n“);printf(“n“);printf(“t“);printf(“t* 4.保存退出系统 *n“);printf(“n“);printf(“t“);printf(“t* 请输入数字选择操作类型: *n“);printf(“n“);printf

14、(“t“);printf(“t*n“);n=getch();switch(n)case 1: input();break;case 2: show();break; case 3: all();break;case 4: writefile();break;default: break;void input() system(“cls“);printf(“请输入车辆信息n“);printf(“车牌号:n“);scanf(“%s“,printf(“车辆类型(a,b,c 分别代表大,中,小):n“);scanf(“%s“,vecount.variety);printf(“进入时间:n“);scan

15、f(“%d“,10printf(“入口(1,2,3 代表三个入口):n“);scanf(“%s“,count+;printf(“是否继续添加(Y/N)n“);if(getch()=y|getch()=Y) input();else menu();void show() system(“cls“);char number10;char id2;int i,R,de=0;double a,b,c,l1=200,l2=300,l3=400;/* 定义三个入口到出口的路程分别是 l1 l2 l3(200 300 400)公里*/printf(“nnnntt*n“);printf(“tt 请输入车牌号:

16、 n“);scanf(“%s“,for(i=0;icount;i+)if(strcmp(vei.num,number)=0) de+;printf(“tt 车辆信息情况: n“);printf(“tt 车辆类型:%s n“,vei.variety);printf(“tt 入口站:%s n“,vei.enter);printf(“tt 进入时间:%d n“,vei.entime);printf(“tt 车牌号:%s n“,vei.num);R=i;if(strcmp(veR.variety,“a“)=0printf(“tt 此车应缴费:%f 元 n“,a);else if(strcmp(veR.

17、variety,“a“)=0printf(“tt 此车应缴费:%f 元 n“,a);else if(strcmp(veR.variety,“a“)=0printf(“tt 此车应缴费:%f 元 n“,a);else if(strcmp(veR.variety,“b“)=0printf(“tt 此车应缴费:%f 元 n“,b);else if(strcmp(veR.variety,“b“)=0printf(“tt 此车应缴费:%f 元 n“,b);else if(strcmp(veR.variety,“b“)=0printf(“tt 此车应缴费:%f 元 n“,b);else if(strcmp

18、(veR.variety,“c“)=0printf(“tt 此车应缴费:%f 元 n“,c);else if(strcmp(veR.variety,“c“)=0printf(“tt 此车应缴费:%f 元 n“,c);else if(strcmp(veR.variety,“c“)=0printf(“ tt 此车应缴费:%f 元 n“,c);if(de=0)printf(“tt 此车记录为空 n“);12printf(“ttPlease press anykey to get back to mainmenu n“);printf(“tt*n“);id2=getch();menu();void w

19、ritefile() int i; if(fp=fopen(“vehicle.txt“,“w“)=NULL) printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“n* 文件打开失败 *“); printf(“t“);printf(“t“);printf(“*n“); for (i=0;icount;i+) if(fwrite(printf(“n“);printf(“n“);printf(“n“);printf(“n

20、“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* 写入文件错误! *“); printf(“t“);13printf(“t“);printf(“*n“); fclose(fp);printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“t“);printf(“t“);printf(“*n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);pr

21、intf(“* 通讯录文件已保存 *n“); printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“*Please press anykey to exit *n“);printf(“t“);printf(“t“);printf(“*n“);exit(0); void all() system(“cls“);printf(“n“);printf(“n“);printf(“n“);printf(“n“);printf(“n“);pr

22、intf(“t“);printf(“t“);printf(“*n“);14printf(“t“);printf(“t“);printf(“* 车辆总数为:%d *n“,count);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“* *n“);printf(“t“);printf(“t“);printf(“*Please press anykey to get back to mainmenu *n“);printf(“t“);printf(“t“);printf(“*n“);getch();menu

23、();三、测试及调试1、调试采用了输入数据模拟路口汽车收费。输入的数据及结果有(1)2222222 a 12 1 结果 100.000000 元(2)5678934 b 13 2 结果 120.000000 元(3)2233445 c 1 3 结果 120.000000 元2、在调试初期,由于程序输入时的许多错误,导致出现错误。后经仔细检查发现错误并及时更正。3、程序初期的界面没有做到界面友好,许多版面不够好看,看似程序粗糙,之后进行了一定程度的美化。四、小结(收获和建议)通过本次课程设计我学习到了要编写好一个完整性、可读性、健壮性好,效率与低存储量需求的 C 语言程序是十分不容易的。在经过很

24、长时间的努力之后,看着劳动成果,很欣慰!虽然程序的完成有他人的帮助,资料的查询。但是,这毕竟是完成的第一个 C 语言大程序。由此可见,平时扎实的基础是很关键,因为如果平时学得就不怎么样,那么面对这么一个比较有难度的程序,可能会望而却步,看他人的程序都是个难点,更别说自己去设计。所以我们在平时要扎实地打好基础,认真听课和完成作业,遇到不懂的要及时向他人寻求帮助。另外,编写 C 语言程序也是一个长期积累的过程,任何人都不可能一下子就能编出一个 C 语言程序,我们要经常练习,平时多看他人的程序,自己编写一些小程序,不仅可以减少在输入时的输入错误,还可以学习到一些改正错误的方法,不断完善自己,从而达到一个可以轻松编写 C 语言程序的人。五、程序截图15161718192021

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报