退票
代码: /*售票*/
void sell_ticket(){
int t,j,u;
输入车次的编号 j控制便历编号,u等于时间函数返回的值 out_or_buy_ticket();
//调用退售票主函数
printf(\请选择你要购票的车次编号:\ scanf(\
for(j=0;j //遍历车次编号,直至找到你所选的编号; if(t==sum[j].num){ system(\ printf(\以为您筛选出符合条件的车次\\n\\n\ menu_a(); u=hour_judge(j); //调用时间函数 if(u==1&&(sum[j].Bearer>sum[j].man)){ printf(\ |d|d|\ sum[j].end,sum[j].hour,sum[j].Bearer,sum[j].man); 班次 printf(\能购票 |\\n\ printf(\是否购票(1/0)? \ 26 //t控制 //输出 } } } int check; scanf(\getchar(); if(check==1){ } printf(\按任意键返回...\ getch(); } else{ } printf(\未找到能够购票的车次...\getch(); sum[j].man=sum[j].man+1; save(); //比较妥协的保存方式 //判断是否购票 printf(\购买完成\\n\ /*退票*/ void return_ticket(){ int j,t,u; out_or_buy_ticket(); printf(\请选择你要退票的车次编号:\scanf(\ for(j=0;j if(t==sum[j].num){ system(\ 27 //遍历车次编号,直至找到你所选的编号; printf(\请你确认\\n\\n\menu_a(); printf(\ |d|d|\ 班次 } } } sum[j].end,sum[j].hour,sum[j].Bearer,sum[j].man); //输出 printf(\已购 |\\n\ printf(\是否退票(1/0)? \int check; scanf(\ //判断是否退票 getchar(); if(check==1){ if((hour_judge(j))==1){ sum[j].man=sum[j].man-1; save(); //比较妥协的保存方式 printf(\退票完成\\n\ } else{ printf(\抱歉,列车已发出,无法退票!\\n\ printf(\按任意键返回主菜单\ } } else printf(\按任意键返回...\ getch(); 28 5 系统测试 5.1软件测试 测试过程中出现了一系列的错误,如文件写入失败,数据读取失败等等一系列的错误,但是通过查阅资料都得到了解决。 5.2系统有效性 总体上说,系统的质量体系文件符合组织的实际情况,指定的质量方针于组织的宗旨相适应,质量目标能够分解到各职能部门和相关层次,生产和服务过程得到了有效控制,已初步具备自我完善的能力。系统稳定性高,潜在BUG少,具有一顶的抗压能力。 6 设计总结 完成这个车票管理系统花费了近1周的时间,完成过程中碰到了很多问题,但通过老师的指导和同学之间的讨论一个个将其解决,体会到了团队协作的乐趣,也通过这个程序把本学期c语言所学都整体梳理了一边,变得正真的会用。说回程序本身,用了指针数组,结构体数组等等一系列的重点内容,学会了课堂上所没提到的函数。界面的切换,以及各种功能的实现都是经过很多次的调试,改BUG而来的,完成这个系统过程中也学会了常见BUG的判断,锻炼了解决BUG的能力。 参考文献 29 [1]何钦铭.C语言程序设计 (第3版) [M].高等教育出版社,2015.08 [2]谭浩强.C程序设计(第5版) [M].清华大学出版社,2017.08 [2]颜晖,张泳.C语言程序设计实验与习题指导(第3版) [M].高等教育出版社,2015.08 [3]刘强,童启.C语言程序设计实验教程[M].电子工业出版社,2018.02 [4]刘博.C语言课程设计[M].机械工业出版社,2013.04 [5]明日科技. C语言函数参考手册[M].清华大学出版社,2012.02 [6]韩先峰.脑动力:C语言函数速查效率手册[M]. 电子工业出版社,2012.07 30