欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    《C++程序设计》课程设计报告订票系统.doc

    • 资源ID:2385099       资源大小:131.50KB        全文页数:21页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《C++程序设计》课程设计报告订票系统.doc

    C+程序设计课程设计设计报告学号姓名指导教师题 目订票系统计算机科学与技术学院年月日目录1. 需求分析3 1.1输入形式3 1.2输出形式3 1.3程序功能3 1.4测试数据32. 概要设计3 2.1流程分析3 2.2具体步骤3 2.3功能模块43. 详细设计4 3.1流程图4 3.2源代码54. 调试分析 14 4.1调试20 4.2验与总结215.参考文献21第一章 需求分析本程序使用visual studio 2010 C+语言编写,完成订票系统的录入,查询,订票,退票及增加、删除、修改航班信息。1.1 输入的形式和输入值的范围输入的形式是数字、人名及编号。 输入值的范围:无。1.2输出的形式输出为订票,包含姓名,座位号等。1.3程序所能达到的功能本程序编写完成后能达到订票的生成及修改,退订,查询和退出。1.4测试数据进入订票系统后,选择订票,输入姓名aaa。再根据选项依次选择进行测试。第二章 概要设计2.1 实现流程分析:采用类模块和文件想结合的方式实现该操作,首先定义一个airline类并将一些基本数据定义为类的共有成员,同时设置成员函数来设置数据和输出数据。2.2具体步骤订票:运用类的成员函数设置数据并写到文件中去,然后在后面的程序中读出。 退票:将文件中的数据读出,用for循环语句进行查找并修改数据查询:用for循环语句进行查找并读出,没有数据的显示错误主函数:用while语句制作菜单,用户根据需要进行选择2.3系统功能模块(1)录入(航班相关记录)功能模块(2)查询(航班相关记录)功能模块(3)订票功能模块(4)退票功能模块(4)退出系统功能模块第三章 详细设计1订票2退票3查询4 退出3.1流程图开始订票开始退票按条件查询退出系统3.2 源代码#include <stdio.h>#include <string.h>#include <malloc.h>#include "conio.h"#define OK 1 /1.避免幻数出现(幻数即诸如0,1,100之类的数字常量,因为无法从字面上看出该数字代表的意义,所以通常用宏替换,让人一看就明白其代表的意义,如ERROR错误,OK正确) #define ERROR 0 /2.便于修改,如果要更改ERROR或OK的定义只需修改宏定义即可,不用再在编码中寻找一个个修改。typedef struct airline char air_num8; char plane_num8; char end_place20; int total; int left; struct airline *next;airline;typedef struct customer char name8; char air_num8; int seat_num; struct customer *next;customer;airline *start_air() airline *a; a=(airline*)malloc(sizeof(airline); if(a=NULL) a->next=NULL; return a;customer *start_cus() customer *c; c=(customer*)malloc(sizeof(customer); if(c=NULL) c->next=NULL; return c;airline *modefy_airline(airline *l,char *air_num) airline *p; p=l->next; for(;p!=NULL;p=p->next) if(strcmp(air_num,p->air_num)=0) p->left+; return l; printf("没有这趟航班!"); return 0; int insert_air(airline *p,char *air_num,char *plane_num,char *end_place,int total,int left) airline *q; q=(airline*)malloc(sizeof(airline); strcpy(q->air_num,air_num); strcpy(q->plane_num,plane_num); strcpy(q->end_place,end_place); q->total=total; q->left=left; q->next=NULL; (*p)->next=q; (*p)=(*p)->next; return OK; int insert_cus(customer *p,char *name,char *air_num,int seat_num) customer *q; q=(customer*)malloc(sizeof(customer); strcpy(q->name,name); strcpy(q->air_num,air_num); q->seat_num=seat_num; q->next=NULL; (*p)->next=q; (*p)=(*p)->next; return OK;int book(airline *a,char *air_num,customer *c,char *name) airline *p=a; customer *q=c->next; p=a->next; for(;q->next!=NULL;q=q->next) for(;p->next!=NULL;p=p->next) if(p->left>0) printf("您的座位号是:%d",(p->total-p->left+1); insert_cus(&q,name,air_num,p->total-p->left+1); p->left-; return OK; else printf("座位已满"); return 0; int del_cus(customer *c,airline *l,char *name) customer *p,*pr; char air_num8; pr=c; p=pr->next; while(p!=NULL) if(strcmp(p->name,name)=0) strcpy(air_num,p->air_num); l=modefy_airline(l,air_num); pr->next=p->next; p=pr->next; printf("完成!"); return OK; pr=pr->next; p=pr->next; printf("NO the customer!"); return ERROR;int search_air(airline *head) airline *p=head->next; printf("air_num plane_num end_place total leftn"); for(;p!=NULL;p=p->next) printf("%s %-10s %-8s %-8d%-8dn",p->air_num,p->plane_num,p->end_place,p->total,p->left); return OK;int search_cus(customer *head) struct customer *q=head->next; printf("name air_num seat_numn"); for(;q!=NULL;q=q->next) printf("%-8s%-12s%-dn",q->name,q->air_num,q->seat_num); return OK;int creat_air(airline *l) airline *p=*l; int i=0; char *air_num3="航班1","航班2","航班3" char *plane_num3="plane1","plane2","plane3" char *end_place3="北京","上海","天津" int total3=100,100,100; int left3=52,54,76; for(i=0;i<3;i+) insert_air(&p,air_numi,plane_numi,end_placei,totali,lefti); return OK;int creat_cus(customer *l) customer *p=*l; int i=0; char *name3="张三","李四","王五" char *air_num3="航班1","航班2","航班3" int seat_num3=2,5,7; for(i=0;i<3;i+) insert_cus(&p,namei,air_numi,seat_numi); return OK;void main() int t=1; customer *cus=start_cus(); airline *air=start_air(); char name8,air_num8,ch; creat_air(&air); creat_cus(&cus); while(t=1) printf("n"); printf("*n"); printf("* 欢迎来到订票系统! *n"); printf("* 订票-1 *n"); printf("* 退票-2 *n"); printf("* 查询-3 *n"); printf("* 退出-4 *n"); printf("*n"); ch=getch(); if(ch='1') printf("Please input a airline number:"); scanf("%s",air_num); printf("请输入您的名字:"); scanf("%s",name); book(air,air_num,cus,name); else if(ch='2') printf("Please input the cancel name:"); scanf("%s",name); del_cus(cus,air,name); else if(ch='3') search_air(air); printf("n"); search_cus(cus); else if(ch='4') t=0; 第四章 调试分析41调试进入界面:选择功能1:选择功能2:选择功能3:4.2经验与总结通过本次课程设计,我认识到了自己的不足。对平时所学内容局限于老师讲的例子,不思举一反三,不思融会贯通,所以在需要多个内容课程设计时感到束手无策,手足无措。在上网查找了有关资料之后,自己也慢慢有了一点想法,根据课程设计的内容要求一项一项完成。 C+语言的进步让我深刻的感受到任何所学的知识都需要实践,没有实践就无法真正理解这些知识以及掌握它们,使其成为自己的财富。第六章 参考文献1谭浩强 C+程序设计 北京:清华大学出版社,2004.62谭浩强 C+程序设计题解与上机指导 北京:清华大学出版社,2005.33CSDN

    注意事项

    本文(《C++程序设计》课程设计报告订票系统.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开