- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
16
一、设计课题:
我们设计的程序有三个,分别是:航空订票系统、24点玩耍、旅游交通查询系统,为了用户的便利和更能表达C语言的模块化理念,我们把三个程序放到一个系统中去实现了。
二、设计内容
1、需求分析:
在完成课程设计的过程中,我们组合作为主,欧阳锦林主要负责程序设计与调试,王峰和段静缘主要负责资料收集与文档输入。设计完成后沟通了各人收获与体会。
、航空订票系统:
通过此系统可以实现如下功能:
录入航线信息
每条航线信息包括航班号、飞机号、目的地、订票数、余票数共5项。假设现在有3条航线,目的地分别是北京,上海,广州,飞机上可乘坐100人(即初始订票数为0,余票数为100),将这3条航线信息存入文件“airline.dat”中。
订票业务
客户信息包括姓名,航班号,座位号(初始为0),假设已有3个客户信息存入文件“customer.dat”中。
有客户订票时,先输入客户的姓名和他提出的航班号,查询该航线的订票状况,假设有余票,则为客户办理订票手续,安排给客户一个座位号,然后将客户的信息添加到文件“customer.dat”中,并修改文件“airline.dat”中该航线的订票数和余票数。假设无余票,则输出客满信息。进一步可实现假设该航班已经无票,可以供给相关可选择航班信息。
退票业务
依据客户提出的航班号,办理退票,从文件“customer.dat”中删除该客户的信息,并修改文件“airline.dat”中相应航线的订票数和余票数。
修改航班信息:当航班信息转变可以修改航班数据文件。
输出全部航线信息和全部客户信息。
退出系统。
、24点玩耍:
根本要求及步骤:
随机产生四个1-13的数,分别代表13张牌。
提示玩家输入算式。
推断玩家输入的表达式是否合法,其中算式中的四个数字只能是程序所给的四个数字,非法则回到1〕。
假设玩家认为这四张牌算不出24点〔如:1,1,1,1〕,可只输入?,程序将推断这四张牌是否能得出24点,假设能,则程序将给出算式,假设不能,说明不能,并回到1〕。
当用户正确输入算式后,用“堆栈来求表达式的值”的原理 求出结果并推断是否为24,得出用户是输是赢的结果。
询问用户是否连续,是则回到1〕,否则完毕程序。
、旅游交通查询系统:
实现功能:火车信息查询、最短路径查询、火车信息编辑、读入修改信息、查看火车信息、查看城市信息。每个功能中又有一些小功能,如火车信息查询中有:按车次查询、按动身地与目的地查询〔其中又有最快、最省钱、全部选择〕中转站查询、查看火车信息,火车信息编辑又包括:添加火车信息、删除火车信息、查看火车信息、保存火车信息功能。
2、概要设计:
、航空订票系统:
1〕、抽象数据类型定义如下〔C语言下的〕:typedefstructairline{
charline_num[8];//航班号charplane_num[8];//飞机号charend_place[20];//目的的inttotal;//座位总数
intleft;//剩余座位
structairline*next;//下一个结点
}airline;
typedefstructcustomer{charname[9];//顾客名charline_num[8];//航班号intseat_num;//座位号
structcustomer*next;//下一个结点
}customer;
/******************链表操作模块***********/airline*init_airline;
//初始化链表
customer*init_customer;
//初始化链表
status insert_airline(airline **p,char *line_num,char
*plane_num,char*end_place,inttotal,intleft);
//airline链表插入操作
//插入航班
status insert_customer(customer **p,char *name,char
*line_num,intseat);
//customer链表插入操作
statuscreat_airline(airline**l);
//创立airline单链表
statuscreat_customer(customer**l);
//创立customer单链表
/******************链表操作模块********************/2〕、其它模块的实现函数声明
专注地铁、铁路、市政领域安全管理资料的定制、修改及润色,本人已有7年专业领域工作经验,可承接安全方案、安全培训、安全交底、贯标外审、公路一级达标审核及安全生产许可证延期资料编制等工作,欢迎大家咨询~
文档评论(0)