汽车索赔管理系统程序ds.docx
- 文档编号:7408632
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:41
- 大小:255KB
汽车索赔管理系统程序ds.docx
《汽车索赔管理系统程序ds.docx》由会员分享,可在线阅读,更多相关《汽车索赔管理系统程序ds.docx(41页珍藏版)》请在冰豆网上搜索。
汽车索赔管理系统程序ds
HUBEIUNIVERSITYOFAUTOMOTIVETECHNOLOGY
C语言程序设计
课程设计报告
课设题目:
汽车索赔管理系统
专业:
电子信息工程(汽车电子)
班级:
电信143
姓名:
顾应洪
成绩:
完成日期:
2015年7月5日到2015年7月10日
指导教师:
胡宁亚
C语言程序设计1
课程设计报告1
一、设计题目与要求3
二、系统设计4
2.1系统设计4
2.2系统模块设计4
2.3详细设计5
2.4主要模块流程图7
三、测试结果10
3.1欢迎界面10
3.2主菜单界面10
3.3录入学生的成绩11
3.4给定索赔编号,显示索赔信息12
3.6给定索赔编号,删除索赔信息13
3.7给定索赔编号,添加索赔信息14
3.8给定索赔编号,修改索赔信息14
3.9保存索赔信息15
3.10题目要求16
3.11各模块测试用例数据的确定16
四、课程设计总结17
五•程序源代码19
4、设计题目与要求
汽车索赔管理程序
题目描述
已知在汽车销售后,服务站在对故障汽车维修后,可以向汽车生产厂家进行索赔,设计一个汽车索赔管理程序,以方便汽车生产厂家对汽车售后索赔进行管理,该程序完成如下功能:
(1)能从键盘输入索赔信息。
(2)指定索赔编号,显示索赔信息。
(3)指定底盘号,显示索赔历史。
(4)给定索赔编号,修改索赔信息。
(5)给定索赔编号,删除索赔信息。
题目要求:
(1)按照分析、设计、编码、调试、测试的软件过程完成这个应用程序。
(2)索赔信息包括:
索赔编号、服务站名称、底盘号、审核人、索赔金额、索赔日期。
(3)为各项操作功能设计一个菜单,应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目。
输入要求:
(1)应用程序运行后在屏幕上显示一个菜单。
用户可以根据需求,选定相应的操作项目。
进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。
程序根据用户输入的信息完成相应的处理,实现要求的功能。
(2)能对输入的数据进行简单的校验,例如,维修日期必须是一个合法的日期格式,索赔编号是唯一的(一个索赔编号对应一次索赔的索赔信息)
输出要求:
(1)应用程序运行后,要在屏幕上显示一个菜单。
(2)要求用户输入数据时,给出清晰、明确的提示信息,包括输入的数据内容、格式以及结束方式等。
(3)在程序完成处理后,要清楚地给出程序的处理结果。
例如,在给定索赔编号删除索赔信息时,如果该索赔不存在,要提示没能删除,如果删除成功要提示删除成功。
实现要求:
(1)在程序中使用链表存储索赔信息。
(2)采用模块化程序设计的方法,将程序中的各项功能用函数实现。
提示:
(1)使用结构体表示索赔信息,一个结点保存一条索赔信息。
扩展功能:
(1)提供一些统计功能。
例如统计每个服务站索赔金额,根据审核人统计审核的索赔次数。
(2)索赔信息从文件读入。
(3)将索赔信息保存到文件中。
1、系统设计
2.1系统设计
2.2系统模块设计
1)主菜单界面:
构造函数voidmenu(),实现系统主菜单的显示。
2)索赔信息录入:
构造函数voidinput(),实现从文件录入汽车索赔信
3)给定索赔编号,查询历史索赔信息:
构造voidfind(),将输入的索赔编号和全部索赔信息对照,输出与输入编号相匹配的索赔信息。
4)给定底盘号,查询历史索赔信息:
构造voidfinddomain(),将输入的底盘号和全部编号的底盘号信息对照,输出与输入底盘号相匹配的索赔信息。
5)修改指定索赔的信息:
构造voidchange(),找出任意选项的索赔信
息,修改该对应选项的索赔信息。
6)删除指定编号的索赔信息:
构造voiddelete(),找出给定编号的索
赔信息,删除该编号的信息。
7)添加新增的索赔信息:
构造voidaddclaim(),指定新的编号,添加索赔信息。
8)保存索赔信息:
构造voidwriteinfo(),将操作之后的索赔信息保
存到文件里边。
2.3详细设计
1、宏定义
#defineLENsizeof(structclaim)
2、结构体定义
structclaim
{
charnum[20];
charname[50];
charAudit[30];
charmoney[20];
chardate[30];
chardomain[30];
structclaim*next;
};
3、全局变量及结构体指针的定义
intinfo_flag,f=0;
intflage=0;
structclaim*head二NULL,*p,*p1,*p2,*p3;
4、函数声明
voidwelcome。
;
/*
欢迎函数*/
voidinput();
/*
读取索赔信息*/
intmenue();
/*
菜单函数*/
voidfind();
/*
索赔编号查找索赔信息*/
voidfinddomain();
/*
按底盘号查找索赔信息*/
voiddelete();
/*
按索赔编号删除索赔信息*/
voidaddclaim();
/*
添加索赔信息*/
voidchange();
/*
修改索赔信息*/
voidwriteInfo();
/*
把链表内谷与进文*/
5、主要模块的实现
系统以主函数intmain()为入口,首先调用voidwelcome。
函数,显示
系统欢迎界面。
然后显示主菜单界面,其次调用voidinput()函数,从文
件读入索赔。
最后调用voidwriteinfo()函数,使索赔信息保存。
2.4主要模块流程图
(2)给定索赔编号,显示某位学生的作业完成情况
(3)给定底盘号,显示所有对应的索赔信息
(4)给定索赔编号,修改该对应的索赔信息
(5)给定索赔编号,删除对应的索赔信息
三•测试结果
3.1欢迎界面
'C:
\iSS\Debug谨设GE
^!
r>r
☆☆
☆☆
☆☆
☆☆
☆☆
☆☆
☆☆☆☆吞舀窃石承石☆衣☆☆☆☆☆
☆☆☆☆☆☆请按任章键进入系☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
欢迎使用汽车素赔管理系统豊
制作人'鑒歩☆蠱聲屈农戍理☆☆☆☆☆$£
3.2主菜单界面
9\涯没\P亡bug\课设,
*********欢迎进入汽车索赔管理系统***********:
HUH%■:
弭理寸丰单
w-
ME餐:
M.X:
M弭曲耳
1
4
iStfts
£□
■H■H:
■Hi
**F*t
MKWMiXiHTCKXMKWMiXiHTCKXMKWMiXiHTCKXMKWMiXiHICKXMKWMiXiHK
肚弭“料鳥梵買耳啊肚电信143…*™*™™*™*^*™*^顾应洪卄***
3.3录入学生的成绩
花惓迅Debug谍殳■就
京021-aJ09S3_fl
CS■■二一IS0~
1UK^nJ121;VTP■■■■1号名:
/:
1金日号
索同二曰一
0:
CL'-.00
i222■s^TJIP■_■■■1号名门:
1
编^?
-<金日旦「
南1203云00110:
W10W
1323■■VT<■■■-1口|r名”:
1
号皿
■■■■Lru■JJm
L424■B岂户\门■■;i号名:
y:
1
金日号索及目一&^^
3.4给定索赔编号,显示索赔信息
.5给定底盘号,显示所有对应的索赔信息
「比:
\澳设\氏乩0\课设曲贰|(口!
回
请输入底盘号二
111
腿惫曲名称:
北/亍、审楼龙小王索!
后金敬:
1000
=20090210
按任意键返回
3.6给定索赔编号,删除索赔信息
按任意键返回
I
0■■■■■—¥00
1525
■■■■■■1号名:
7^^:
i
编^-<金日号
I
1424■■^ThJ-:
:
1口万名:
?
:
1編;^-<金日口丐
/.J
HnH
)2閒
请输入要鵬的索嗚编号伽
剩余索赔信息郑
0^010■■/IX00
1222
■■ 1口巧名霁: i编;®-<金日号 ■南12Q3云QH11 0: 1XJ00 : 1」小: 3: 23□■亍名訪4^^: 11编: ;5^<金日号 3.7给定索赔编号,添加索赔信息 请重新输入将要扌忝加的索赔编号 索赔编号;100^僦壬堰 2800 HH;2B12-0&-OG 半: I-;9\课iSXDebug\5? iaexe* 0^^323LP■---1-J番: 1人金目I? liUte 江0294浙側120■■RMM-00 1称网4214号名: dJ^^: 11编戈金日号赔香赔臺 0B_-a^-00 1尔拮525■-^TKJ: : 1号名: 7^s: l编戈金日号 Bfi-ps 编更金日号 : 280Q : 2012-05-06 半: 3.8给定索赔编号,修改索赔信息 4. [鲁I賣穆衣鴛常审核人: 顾应洪 oy诬SXDeb血课设启灼 称 喀玄费金耳 3.9保存索赔信息 3.10题目要求 3.11各模块测试用例数据的确定 建立的文件为: 索赔信息表.txt; 数据为: 1001 北京 小王 1000 20090210 111 1002 湖北 小张 2000 20101002 112 1003 云南 小李 3000 20111212 113 1004 浙江 小明 4000 20120211 114 1005 上海 小周 5000 20130630 115 保存后的文件为: 1.txt 数据为: 1002湖北顾应洪200020101002112 1003云南小李300020111212113 1004浙江小明400020120211114 1005上海小周500020130630115 1006十堰顾应洪28002012-05-06116 四、课程设计总结 在本学期对c语言的粗略学习之后,我们进行的这次课程设计,无疑加深了对c语言的认识和应用。 要想从书本走向实践是一个很艰难地过程,所以刚开始的时候,我遇到了各种各样的阻碍,以至于差点儿打消了我做这次设计的念头。 一开始就遇到了怎样能正确创建一个链表的问题,在上课的时候就模糊不清,不知道所以然,开始翻课本,问同学,依然是朦朦胧胧,又玩命的上机操作才终于得到解决。 在过程中问我才认识到自己自己还有很多的知识没学好,基础知识没理清,而且很多东西还要去翻书,去网上搜索,而且遇到一些小错误运行不出来就会烦躁不安,逐渐克服这些问题后我发现对c语言越来越感兴趣了,以后我要克服这些,尽量保持一颗良好的心态,学好c语言。 首先我必须 学好c语言的基础知识,然后能在电脑上熟练的运用,上网的时候多看一些优秀的代码,看看别人怎么写,再结合自己的不足之处进行改正。 总之,这次的课设是是我记忆里的一个新篇章,更是c语言编程上的一个里程碑。 接着又是各种类型的错误,很多是学艺不精的结果,一个一个解决,时而还有道查一下单词。 就这样实践是检验真理的标准,在屡败屡战之后,迎来了成功的花朵。 然后我抓破破脑袋的让我的程序更加合理和多功能。 我们已经学习了《C语言程序设计》这门课,但是我所学的知识最多也就是在做作业的时候才会用到,平时没有什么练习的机会,这次的课程设计是我第一次通过自己构思,和同学讨论并且不断查阅资料来设计一项程序。 这次设计,不仅巩固了我以前所学的知识,还让我对c语言有了更深 一步的了解,掌握了更多的技巧和技能。 C语言是计算机程序设计的重要 理论基础,在我们以后的学习和工作中都有着十分重要的地位。 要学好这种语言,仅仅学习课本上的知识是不够的,还要经常自己动手,有较强的实践能力。 只有多动手,经常编写程序,才能发现我们学习上的漏洞和自己的不足,并在实践中解决这些问题,不断提高自己转化知识的能力。 在 我有解决不了的问题时,我会主动查阅相关的资料,或向其他同学询问,这不仅丰富了我们的知识,还增进了我们同学之间的友谊。 为了增大信息的安全性,需要用文件来存储信息,由于我在上课时不注重对文件的运用,所以在这方面有较大的困难。 我先将书本认认真真地看了一遍,又做了一下课后习题来验证和增进自己的理解,终于,经过我们的不懈努力,我的程序有了突破,成功地实现了用文件来保存并查看学索赔信息。 这次设 计中,我的收获还有就是学会了用流程图来表达自己的想法,并根据流程图来逐步实现程序的功能。 开始的时候,我画流程图很是困难,需要一个多小时才能清楚的根据自己的想法画出图来,后来画多了,就更加了解它的功能,十分得心应手,能够比较快而准确的画出来。 在这次课程设计 中,我们首先对系统的整体功能进行了构思,然后用结构化分析方法进行分析,将整个系统清楚的划分为几个模块,再根据每个模块的功能编写代码。 而且尽可能的将模块细分,最后在进行函数的调用。 我们在函数的编写过程中,我们不仅用到了for循环、while循环和switch语句,还用到了函数之间的调用(包括递归调用)。 由于我们是分工编写代码,最后需要将每个人的代码放到一起进行调试。 在调试的过程中也遇到了困难,但经过我耐心的修改,终于功夫不负有心人,我成功了! 在这样一个过程中,我收获了许多在书本上根本学不到的东西。 了解到了自己的不足之处,受益匪浅。 五•程序源代码 #include #include #include #include #includevstring.h> #include /*********************************************** **************************************************************** ********* #defineLENsizeof(structclaim) ********************************************* **************************************************************** structclaim charnum[20]; charname[50]; charAudit[30]; charmoney[20]; chardate[30]; chardomain[30]; structclaim*next; }; /***************************************** 定义 ********************************************************* intinfo_flag,f=0; intflage=0; structclaim*head二NULL,*p,*p1,*p2,*p3; /************************************************************/ /*函数名: 密码函数*/ /*功能描述: 本函数用于实现加密功能,目的是保护内部系统资料*/ /*入口参数: 无*/ /*出口参数: 无*/ /*返回值: 无*/ /************************************************************/ /*密码函数*/ voidmima() { intn; charmima1[10]; charmima2[]={"123456"}; printf("\n\n\n\t\t\t密码有三次输入机会! ! ! "); for(n=1;n<=3;n++) { printf("\n\n\n\t\t\t请输入密码(123456): "); seanf("%s",mima1); if(strcmp(mima1,mima2)! =0) printf("\n\t\t\t密码错误,请重新输入! "); } else { system("cls"); return; } } printf("\n\t\t\t密码输入错误,按任意键退出"); exit(O); } /************************************************************/ /*函数名: 主函数*/ /*功能描述: 本函数用于实现调用函数的功能*/ /*入口参数: 无*/ /*出口参数: 无*/ /*返回值: 无*/ /************************************************************/ /*主函数*/ intmain() { mima(); welcome。 ; while (1) { system("cls"); switch(menue()) { case1: system("cls"); if(info_flag==1) { printf(”信息已建立\n"); getch(); break; } else { input(); break; } case2: system("cls");find();break; case3: system("cls");finddomain();break; case4: system("cls");declared();break; case5: system("cls");addclaim();break; case6: system("cls");change();break; case7: system("cls");writeInfo();break; case8: system("cls");keti();break; case0: return0; default: { fflush(stdin); printf("\n选择错误,请正确输入你的选择(0~7),: \n"); printf("\n任意键返回\n"); fflush(stdin); getch(); system("cls"); } } } return0; } /************************************************************/ /*函数名: 课设题目*/ /*功能描述: 本函数用于实现显示课设题目的功能*/ /*入口参数: 无*/ /*出口参数: 无*/ /*返回值: 无*/ /************************************************************/ /*课设题目*/voidketi() { printf("9.汽车索赔管理程序\n"); printf("题目描述\n"); printf(”已知在汽车销售后,服务站在对故障汽车维修后,可以向汽车生 产厂家进行索赔,设计一个汽车索赔管理程序,以方便汽车生产厂家对汽车售后索赔进行管理,该程序完成如下功能: \n"); printf(" (1)能从键盘输入索赔信息。 \n"); printf(" (2)指定索赔编号,显示索赔信息。 \n"); printf("(3)指定底盘号,显示索赔历史。 \n"); printf("(4)给定索赔编号,修改索赔信息。 \n"); printf("(5)给定索赔编号,删除索赔信息。 \n"); printf("题目要求: \n"); printf(" (1)按照分析、设计、编码、调试、测试的软件过程完成这个应用 程序。 \n"); printf(" (2)索赔信息包括: 索赔编号、服务站名称、底盘号、审核人、索 赔金额、索赔日期。 \n"); printf("(3)为各项操作功能设计一个菜单,应用程序运行后,先显示这个 菜单,然后用户通过菜单项选择希望进行的操作项目。 \n"); printf("输入要求: \n"); printf(" (1)应用程序运行后在屏幕上显示一个菜单。 用户可以根据需求, 选定相应的操作项目。 进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。 程序根据用户输入的信息完成相应的处理,实现要求的功能。 \n"); printf(" (2)能对输入的数据进行简单的校验,例如,维修日期必须是一个 合法的日期格式,索赔编号是唯一的(一个索赔编号对应一次索赔的索赔信息)\n"); printf("输出要求: \n"); printf(” (1)应用程序运行后,要在屏幕上显示一个菜单。 \n"); printf(" (2)要求用户输入数据时,给出清晰、明确的提示信息,包括输入 的数据内容、格式以及结束方式等。 \n"); printf("(3)在程序完成处理后,要清楚地给出程序的处理结果。 例如,在 给定索赔编号删除索赔信息时,如果该索赔不存在,要提示没能删除,如果删除成功要提示删除成功。 : \n"); printf("实现要求: \n"); printf(" (1)在程序中使用链表存储索赔信息。 \n"); printf(" (2)采用模块化程序设计的方法,将程序中的各项功能用函数实 现。 \n"); printf("扩展功能: \n"); printf(" (1)提供一些统计功能。 例如统计每个服务站索赔金额,根据审核 人统计审核的索赔次数。 \n"); printf(" (2)索赔信息从文件读入。 \n"); printf("(3)将索赔信息保存到文件中。 \n"); system("pause"); /*函数名: 欢迎函数*/ /*功能描述: 欢迎界面*/ /*入口参数: 无*/ /*出口参数: 无*/ /*返回值: 无*/ /************************************************************/ /*欢迎函数*/ voidwelcome。 { system("color8a"); printf("\n\n\n\n\t\t☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ ☆☆☆☆☆☆☆☆☆☆☆\n”); printf(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汽车 索赔 管理 系统 程序 ds