C语言课程设计报告飞机订票系统
- 格式:doc
- 大小:143.00 KB
- 文档页数:12
飞机订票系统c语言课程设计一、课程目标知识目标:1. 学生能理解飞机订票系统的基本功能需求,掌握C语言实现此类系统的基本知识结构。
2. 学生能掌握结构体、数组、函数等C语言基础语法在飞机订票系统中的应用。
3. 学生了解并掌握文件操作在飞机订票系统中的重要性,并能实现数据存储与读取。
技能目标:1. 学生具备运用C语言设计并实现一个简单的飞机订票系统的能力。
2. 学生能通过分析问题,设计合理的程序结构,编写出清晰、高效的代码。
3. 学生能够利用所学知识进行程序调试和优化,解决实际问题。
情感态度价值观目标:1. 学生培养对编程的兴趣,激发探究精神,形成积极的学习态度。
2. 学生在课程实践中体会团队合作的重要性,培养沟通与协作能力。
3. 学生通过学习,认识到计算机编程在现实生活中的应用价值,增强社会责任感。
课程性质:本课程为高年级C语言程序设计课程的实践应用环节,旨在巩固学生的基础知识,提高实际编程能力。
学生特点:学生已经具备一定的C语言基础,具有较强的逻辑思维能力和问题解决能力。
教学要求:结合学生特点和课程性质,课程目标应具体、可衡量,注重培养学生的实践能力和团队协作精神。
通过分解课程目标为具体的学习成果,使学生在实践中掌握知识,提高技能,培养情感态度价值观。
后续教学设计和评估将围绕这些具体目标进行。
二、教学内容1. 系统需求分析:介绍飞机订票系统的基本功能,如用户登录、航班查询、座位选择、订票、退票等。
- 教材章节:第五章“结构体与链表”的应用,第十章“文件操作”。
2. C语言基础知识回顾:结构体、数组、函数、指针、文件操作等。
- 教材章节:第一至第四章基础语法,第五章结构体与链表,第六章数组,第七章函数,第八章指针,第十章文件操作。
3. 程序设计:根据需求分析,设计系统框架,编写代码实现各功能模块。
- 教材章节:第三章“程序控制结构”,第四章“函数与程序结构”,第五章“结构体与链表”,第七章“函数”。
c课程设计飞机订票系统一、课程目标知识目标:1. 学生能理解飞机订票系统的基本原理,掌握其功能模块和使用方法。
2. 学生能运用所学编程语言,设计并实现一个简单的飞机订票系统。
3. 学生了解数据库的基本操作,能运用数据库管理飞机票务信息。
技能目标:1. 学生掌握编程语言的基本语法,能运用条件语句、循环语句等编写程序。
2. 学生具备一定的系统设计能力,能根据需求分析,设计出合理的系统模块。
3. 学生能够运用数据库技术,实现数据的增、删、改、查等操作。
情感态度价值观目标:1. 学生培养对计算机编程的兴趣,激发学习主动性和创新能力。
2. 学生树立团队合作意识,学会与他人共同解决问题,提高沟通与协作能力。
3. 学生通过课程学习,认识到信息技术的应用价值,增强对信息社会的责任感。
课程性质分析:本课程为信息技术学科,旨在培养学生掌握编程语言和数据库技术,通过设计飞机订票系统,提高学生的实际操作能力和解决实际问题的能力。
学生特点分析:本课程针对初中年级学生,他们对计算机有一定的兴趣,具备一定的逻辑思维能力,但编程基础和实际操作能力有限。
教学要求:1. 教学内容与课本紧密结合,注重理论与实践相结合,提高学生的实际操作能力。
2. 教学过程中,关注学生的个体差异,给予个性化指导,确保每个学生都能掌握课程内容。
3. 通过小组合作、讨论等形式,培养学生的团队协作能力和沟通能力。
二、教学内容1. 理论知识:- 了解飞机订票系统的基本概念和功能。
- 学习编程语言的基本语法,如变量、数据类型、运算符、条件语句和循环语句等。
- 掌握数据库的基本概念,如表、字段、记录等。
2. 实践操作:- 设计飞机订票系统的功能模块,如用户注册、登录、航班查询、购票、退票等。
- 编写程序代码,实现飞机订票系统的各个功能。
- 学习数据库的创建和操作,管理飞机票务信息。
3. 教学大纲:- 第一周:飞机订票系统概述,学习编程语言基本语法。
- 第二周:设计系统功能模块,学习条件语句和循环语句。
航空订票系统c语言课程设计一、课程目标知识目标:1. 让学生掌握C语言中结构体、数组、函数等基本知识点的综合运用,特别是在航空订票系统中的应用。
2. 让学生了解并掌握航空订票系统的基本业务流程,如航班查询、预订、取消预订等功能。
3. 使学生能够通过C语言实现简单的航空订票系统,并了解其背后的数据结构和算法。
技能目标:1. 培养学生运用C语言进行问题分析、程序设计和调试的能力。
2. 培养学生独立思考和团队协作的能力,通过项目实践,提高解决实际问题的能力。
3. 培养学生具备良好的编程习惯,编写出结构清晰、可读性强的代码。
情感态度价值观目标:1. 培养学生对计算机编程的兴趣和热情,激发他们主动探索新知识的精神。
2. 培养学生面对困难和挑战时,保持积极乐观的心态,勇于克服困难,不断进步。
3. 通过航空订票系统课程设计,使学生认识到编程在实际生活中的应用价值,提高他们对社会责任的认识。
课程性质:本课程为C语言程序设计课程的实践环节,以项目为导向,注重培养学生的动手能力和实际应用能力。
学生特点:学生已经掌握了C语言的基本语法和编程技巧,具有一定的编程基础,但缺乏实际项目经验。
教学要求:结合学生特点和课程性质,采用案例教学、任务驱动等方法,引导学生通过实践掌握课程内容,提高编程能力。
在教学过程中,注重启发式教学,鼓励学生提问、讨论,培养他们的问题解决能力和团队协作精神。
最终达到课程目标,使学生能够独立完成航空订票系统课程设计。
二、教学内容1. C语言基础知识回顾:结构体、数组、函数、指针、文件操作等。
2. 航空订票系统业务流程分析:航班查询、预订、取消预订、显示航班信息等。
3. 数据结构和算法:链表、排序算法、查找算法等在航空订票系统中的应用。
4. 编程规范和调试技巧:代码规范、调试方法、性能优化等。
5. 项目实践:根据业务流程,设计并实现航空订票系统各功能模块。
教学内容安排和进度:1. 第一周:C语言基础知识回顾,重点讲解结构体、数组和函数。
c语言航空订票系统课程设计一、课程目标知识目标:1. 让学生掌握C语言中结构体、数组、函数等基本知识点的综合应用。
2. 让学生了解并掌握航空订票系统的基本功能模块及其实现方法。
3. 帮助学生理解文件操作在C语言中的应用,学会读写航班信息。
技能目标:1. 培养学生运用C语言进行问题分析、程序设计和调试的能力。
2. 培养学生独立完成一个小型项目的能力,包括需求分析、功能设计、编码实现和测试。
3. 提高学生团队协作能力,学会在项目中分工合作、共同解决问题。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习热情,增强自信心。
2. 培养学生良好的编程习惯,注重代码规范,提高代码质量。
3. 引导学生关注实际问题,培养解决实际问题的能力,增强社会责任感。
本课程针对高中年级学生,课程性质为实践性较强的项目课程。
结合学生特点,课程目标注重培养学生的动手能力和团队协作能力。
在教学过程中,要求教师引导学生掌握C语言相关知识,关注实际问题的解决,以实现课程目标。
通过本课程的学习,学生将能够独立完成一个航空订票系统,达到预期的学习成果。
二、教学内容1. C语言基础回顾:结构体、数组、函数、指针、文件操作等。
2. 航空订票系统需求分析:介绍系统功能模块,包括航班查询、预订、取消预订、显示航班信息等。
3. 功能模块设计:- 航班信息结构体设计- 航班信息文件读写操作- 航班查询功能实现- 航班预订与取消预订功能实现- 航班信息显示功能实现4. 编程规范与调试技巧:代码规范、调试方法、性能优化等。
5. 团队协作与项目管理:任务分配、进度控制、代码合并与冲突解决等。
教学内容依据教材相关章节进行组织,确保科学性和系统性。
教学大纲安排如下:第一周:C语言基础回顾,航空订票系统需求分析。
第二周:航班信息结构体设计,文件读写操作。
第三周:航班查询功能实现,编程规范与调试技巧。
第四周:航班预订与取消预订功能实现,团队协作与项目管理。
航空订票系统课程设计(c语言)一、教学目标本课程旨在通过学习航空订票系统的开发,让学生掌握C语言编程的基本概念和方法,培养学生的实际编程能力和问题解决能力。
具体目标如下:1.理解C语言的基本语法和数据结构。
2.掌握函数的定义和调用。
3.学习面向对象编程的基本概念。
4.能够使用C语言编写简单的程序。
5.能够运用面向对象编程的思维解决实际问题。
6.能够独立完成航空订票系统的开发。
情感态度价值观目标:1.培养学生的团队合作意识和沟通能力。
2.培养学生的创新思维和问题解决能力。
3.培养学生对编程语言和计算机科学的兴趣和热情。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、函数的定义和调用,以及面向对象编程的基本概念。
具体安排如下:1.C语言的基本语法和数据结构(2课时)。
2.函数的定义和调用(2课时)。
3.面向对象编程的基本概念(2课时)。
4.航空订票系统的开发实践(4课时)。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。
1.讲授法:用于讲解C语言的基本语法、数据结构和函数的定义和调用。
2.讨论法:用于讨论面向对象编程的基本概念,促进学生之间的交流和思考。
3.案例分析法:通过分析航空订票系统的案例,让学生理解和应用所学的编程知识。
4.实验法:通过实际编写程序和开发航空订票系统,培养学生的实际编程能力和问题解决能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:选择一本适合学生水平的C语言编程教材。
2.参考书:提供相关的编程参考书籍,供学生自主学习。
3.多媒体资料:制作相关的教学PPT和视频,帮助学生更好地理解和掌握知识。
4.实验设备:提供计算机实验室,让学生能够实际编写程序和进行实验。
五、教学评估本课程的评估方式将包括平时表现、作业和考试三个部分,以全面客观地评价学生的学习成果。
c飞机订票系统课程设计一、课程目标知识目标:1. 让学生理解飞机订票系统的基本原理和功能模块,掌握相关概念和术语;2. 使学生掌握数据库查询、数据输入输出、界面设计等基本编程技能;3. 帮助学生了解我国民航业的发展现状和飞机订票系统的实际应用。
技能目标:1. 培养学生运用所学知识设计和开发一个简单的飞机订票系统;2. 培养学生分析和解决实际问题的能力,提高团队协作和沟通能力;3. 培养学生运用计算机技术进行信息处理和创新能力。
情感态度价值观目标:1. 培养学生对计算机科学和民航业的兴趣,激发学习热情;2. 培养学生关注社会热点问题,增强社会责任感和使命感;3. 培养学生尊重知识产权,遵循法律法规,树立正确的价值观。
课程性质:本课程为实践性较强的学科课程,结合编程、数据库和民航知识,旨在培养学生的实际操作能力和解决问题的能力。
学生特点:学生具备一定的计算机编程基础和民航知识背景,对新鲜事物充满好奇,具备较强的动手能力和团队协作精神。
教学要求:教师应注重理论与实践相结合,充分调动学生的积极性,引导学生主动探究,注重培养学生的创新能力和实践能力。
在教学过程中,关注学生的个体差异,给予个性化指导,确保课程目标的实现。
通过课程学习,使学生能够达到预定的学习成果,为后续相关课程的学习打下坚实基础。
二、教学内容1. 理论知识:- 计算机网络基础:介绍网络通信原理,TCP/IP协议,网络编程基础;- 数据库原理:讲解数据库的基本概念,关系型数据库的设计与应用;- 民航知识:介绍民航业的发展,飞机票务系统的业务流程及功能需求。
2. 实践操作:- 界面设计:学习使用相关工具进行界面设计,制作飞机订票系统的用户界面;- 数据库操作:掌握SQL语句,实现对数据库的增删改查操作;- 编程实现:运用所学编程语言,实现飞机订票系统的核心功能。
3. 教学大纲:- 第一周:计算机网络基础,数据库原理;- 第二周:民航知识,界面设计;- 第三周:数据库操作,编程实现;- 第四周:综合实践,项目调试与优化。
飞机订票系统 c语言课程设计一、教学目标本课程的学习目标主要包括知识目标、技能目标和情感态度价值观目标。
知识目标要求学生掌握飞机订票系统的功能、结构及其相关原理;技能目标要求学生能够运用C语言独立完成飞机订票系统的开发;情感态度价值观目标要求学生培养团队协作意识,增强对计算机编程的兴趣。
通过对课程性质、学生特点和教学要求的分析,我们将目标分解为具体的学习成果。
首先,学生需要理解飞机订票系统的业务流程,掌握C语言的基本语法和编程技巧;其次,学生能够运用所学的知识独立完成飞机订票系统的开发,提高实际操作能力;最后,学生在团队协作过程中培养沟通与协作能力,增强对计算机编程的兴趣和自信心。
二、教学内容本课程的教学内容主要包括飞机订票系统的功能介绍、C语言基础知识、飞机订票系统的模块划分和编程实现。
首先,介绍飞机订票系统的功能,包括用户注册、登录、航班查询、机票预订、支付结算等模块。
其次,讲解C语言的基本语法、数据类型、运算符、控制结构等基础知识。
接着,对飞机订票系统进行模块划分,引导学生了解各模块之间的关系和功能实现。
最后,分别针对各个模块,引导学生运用C语言进行编程实现,完成飞机订票系统的开发。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法。
包括讲授法、讨论法、案例分析法和实验法等。
首先,通过讲授法向学生传授飞机订票系统的相关知识和C语言的基本语法。
其次,采用讨论法引导学生针对飞机订票系统的功能和模块划分进行深入探讨,提高团队协作能力。
然后,运用案例分析法分析实际开发过程中遇到的问题,培养学生解决问题的能力。
最后,通过实验法让学生动手实践,独立完成飞机订票系统的开发,提高实际操作能力。
四、教学资源本课程所需的教学资源包括教材、参考书、多媒体资料和实验设备。
教材方面,我们将选用《C语言程序设计》作为主教材,辅以《飞机订票系统设计与实现》等相关参考书。
多媒体资料包括教学PPT、视频教程等,以丰富教学手段,提高学生的学习兴趣。
C语言课程设计题目:飞机订票系统专业:。
学号:。
:。
任课教师:。
C语言课程设计报告一、课程设计报告正文(1)课程设计题目的原文;假定民航机场共有n个航班:航班号、起始站、终点站、飞机号、飞机时间、乘员定额、余票量。
试设计一民航订票系统,使之能提供下列服务:航班信息录入功能(文件保存)完成航班信息浏览功能;查询航线(至少一种查询方式)。
(2)题目的分析(需求分析);任务:通过此系统可以实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中)浏览:航班信息浏览功能需要提供显示操作;查询:可提供按照航班号、起点站、终点站、飞行时间、查询,可以查询某个航线的情况(如,输入航班号,起飞抵达城市,确定航班是否满仓);另外要提供键盘式选择菜单以实现功能选择。
要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能。
可以建立航班结构体,结构体成员包括航班号、起点站、终点站、飞行时间、预售票总数、已售票数。
(3)整体设计与模块划分;根据需求分析,该程序可分为以下四大模块:(4)代码设计;包括——各功能模块的流程图;重要模块中关键部分的代码分析;关键函数的算法设计和分析等等;二、航班基本信息输入模块航班信息录入函数:航班信息浏览函数:[流程图]显示信息查询模块:分析:基本信息的查询按查询可供选择的方式比较丰富,可按航班号查询。
在查询小模块中采用了直接查找的方法。
本模块可以通过多种查询方式进行完善。
这是本程序没有做的地方。
[流程图](一)核心源程序清单和执行结果:a)源程序清单:#include<stdio.h>#include<stdlib.h>#include<io.h>#include<math.h> //标准输入、输出头文件#include<string.h> //包含字符串函数处理头文件#include<process.h> //包含access函数的头文件#define N 1000 //定义最多的航班数#define PRINT "%d\t\t%s\t\t%s\t\t星期%s\t\t%d\n ",s[i].num,s[i].start,s[i].over,s[i].time,s[i].count //宏定义输出格式struct air //定义结构体数组{int num; //定义航班号char start[20]; //航班起始站char over[20]; //终点站char time[10]; //飞行时间int count; //机票数量}s[N];int i,m=0; //定义全局变量char ii[10];void add(); //函数声明增加航班信息函数void print(); //显示航班信息void search(); //查找航班信息void read(); //读取文件void save(); //保存文件void output(); //输出格式void chushihua(); //系统初始化void build(); //建立数据文件void main() //主函数{int j;chushihua(); //系统初始化判断是否存在原始数据文件printf(" O(^_^)O欢迎使用飞机订票系统O(^_^)O \n"); //打印出系统主界面do{printf("===================================================================== =========== ");printf(" 1.增加航班信息\n"" 2.浏览航班信息\n"" 3.查找航班信息(按航班号)\t\t\n"" 0.退出\n");printf("================================================================================ ");printf("请在0-3中选择以回车键结束:");scanf("%d",&j);switch(j){case 1: add(); //调用增加航班函数break;case 2:print(); //调用显示模块break;case 3:search(); //调用查找模块break;case 0: //退出系统save();printf("使用,再见!( ^_^ )/~~ \n ");break;}}while(j!=0); //判断是否调用其他函数}void chushihua() //定义系统初始化函数{if(access("hangban.dat",0)){build();}elseread();}void build() //定义建立数据文件函数{FILE *fp; //定义文件指针if((fp=fopen("hangban.dat","wb"))==NULL) //打开文件并判定是否出错{printf("创建文件失败! "); //打印出错提示getchar();return;}printf("请依次输入航班信息(以回车键结束):\n"); //打印提示信息printf("-------------------------------------------------------------------------- \n");for(i=0;i<N;i++){printf("请输入航班号: ");scanf("%d",&s[i].num); //输入航班号printf("请输入起始站: ");scanf("%s",s[i].start); //输入起始站printf("请输入终点站: ");scanf("%s",s[i].over); //输入终点站printf("请输入时间(星期几): ");scanf("%s",s[i].time); //输入时间printf("请输入机票数: ");scanf("%d",&s[i].count); //输入机票数fwrite(&s[i],sizeof(struct air),1,fp);m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);if(strcmp(ii,"y")!=0) //判断是否继续添加航班信息{fclose(fp); //关闭文件return;}}}void read() //定义读取文件函数{FILE *fp;if((fp=fopen("hangban.dat","r"))==NULL){printf("创建文件失败! ");getchar();return;}i=0;while(!feof(fp)){fread(&s[i],sizeof(struct air),1,fp); //逐块读取数据i++;m++; //计算存在航班数}m--;fclose(fp);}void save() //定义保存函数{FILE *fp;if((fp=fopen("hangban.dat","wb"))==NULL){printf("创建文件失败! ");getchar();return;}for(i=0;i<m;i++) //逐块保存数据fwrite(&s[i],sizeof(struct air),1,fp);fclose(fp);}void add() //定义增加航班信息函数{do{printf("请依次输入您要增加的航班信息(以回车键结束): \n"); //打印提示信息printf("-------------------------------------------------------------------------- \n");printf("请输入航班号: ");scanf("%d",&s[m].num); //读取航班号printf("请输入起始站: ");scanf("%s",s[m].start); //读取起始站printf("请输入终点站: ");scanf("%s",s[m].over); //读取终点站printf("请输入时间: ");scanf("%s",s[m].time); //读取时间printf("请输入机票数: ");scanf("%d",&s[m].count); //读取机票数m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);}while(!strcmp(ii,"y")); //判断是否继续添加}void output() //定义输出格式函数{printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n"); //信息标题for(i=0;i<m;i++)printf(PRINT);//打印出信息}void print() //定义显示航班信息函数{printf("\n目前我们有如下航班:\n");output(); //调用输出格式函数printf("\n请按回车键返回上层菜单");getchar();getchar();}void search() //定义查询函数{int n;do{printf("\n请输入航班号:");scanf("%d",&n); //输入查询的航班号for(i=0;i<m;i++){if(s[i].num==n) //按航班号判定输出条件{printf("\n您所查找的航班信息为:\n ");printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n\n");printf(PRINT); //显示信息printf("\n查询完毕,按回车键继续");getchar();getchar();return;}}printf("\n对不起,没有您需要的信息!\n ");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s",ii);}while(!strcmp(ii,"y"));//判定是否重新查找}1)第一次运行程序(输入初始数据)界面提示输入原始数据:请输入航班号→请输入起始站→请输入终点站→请输入飞行时间→请输入机票数。
c语言民航订票系统课程设计一、课程目标知识目标:1. 让学生掌握C语言中数组、结构体、函数等基本概念及其应用;2. 让学生了解民航订票系统的基本业务流程,理解系统设计的基本原则;3. 使学生能够运用C语言实现简单的民航订票系统功能,如用户注册、航班查询、购票、退票等。
技能目标:1. 培养学生运用C语言进行程序设计的能力,特别是针对民航订票系统这种实际问题的解决能力;2. 提高学生分析问题、设计算法、编写程序、调试程序的能力;3. 培养学生团队协作能力,通过小组合作完成课程设计。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,培养他们主动探索新知识的热情;2. 培养学生面对实际问题时,具备积极解决问题的态度,树立正确的价值观;3. 通过课程设计,使学生认识到编程对于解决现实问题的意义,提高社会责任感。
分析课程性质、学生特点和教学要求,本课程目标旨在让学生在掌握C语言基础知识的基础上,通过实际项目的设计与实现,提高编程能力和解决实际问题的能力。
同时,注重培养学生团队协作精神,提高他们的情感态度价值观,为将来的职业发展打下坚实基础。
通过本课程的学习,学生将能够独立或协作完成一个简单的民航订票系统,并在实践中不断提高自己的编程技能和综合素质。
二、教学内容1. C语言基础知识回顾:数组、结构体、函数、指针等基本概念及其应用。
2. 民航订票系统需求分析:介绍系统业务流程,分析用户需求,明确系统功能模块。
3. 系统设计:讲解如何运用C语言进行系统设计,包括模块划分、数据结构设计、接口设计等。
4. 编程实现:- 用户注册与登录模块:实现用户注册、登录、修改密码等功能;- 航班查询模块:实现按航班号、出发地、目的地等条件查询航班信息;- 购票模块:实现用户购票、选择座位、支付等功能;- 退票模块:实现用户退票、退款等功能;- 管理员模块:实现航班信息管理、用户管理、订单管理等功能。
5. 系统测试与调试:教授学生如何进行系统测试,找出并修复程序中的错误。
c语言机票预订系统课程设计一、课程目标知识目标:1. 让学生掌握C语言中结构体、数组、函数等基本知识点的综合应用;2. 让学生理解并掌握C语言中文件操作的基本方法;3. 让学生掌握C语言实现机票预订系统的基本原理和步骤。
技能目标:1. 培养学生运用C语言解决实际问题的能力,能独立完成机票预订系统的设计和编程;2. 培养学生分析问题、设计解决方案的能力,能针对具体需求进行模块划分和功能实现;3. 提高学生的团队协作能力,学会与他人合作共同完成一个项目。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣和热情,培养良好的编程习惯;2. 培养学生面对问题勇于挑战、积极解决的态度,增强自信心;3. 通过团队合作,培养学生的集体荣誉感和责任感。
课程性质分析:本课程为C语言程序设计课程的实践环节,旨在让学生通过实际项目的开发,巩固所学知识,提高编程能力。
学生特点分析:学生已具备C语言基础知识,具有一定的编程能力,但缺乏实际项目经验,对综合运用知识解决实际问题的能力有待提高。
教学要求:1. 注重理论与实践相结合,引导学生将所学知识应用于实际项目中;2. 鼓励学生积极参与讨论,培养独立思考和解决问题的能力;3. 加强团队合作指导,提高学生的沟通能力和协作精神。
二、教学内容1. C语言基础知识回顾:结构体、数组、函数、指针、文件操作等;2. 机票预订系统需求分析:讲解系统功能需求,引导学生进行需求分析和模块划分;3. 系统设计:介绍C语言实现机票预订系统的基本原理,包括数据结构设计、模块设计等;4. 编程实现:- 数据结构设计:定义所需的结构体,如航班信息、用户信息等;- 功能模块实现:编写各功能模块的代码,如航班查询、预订、取消预订等;- 文件操作:实现数据的存储和读取,保证数据的持久化;5. 测试与优化:介绍测试方法,指导学生进行系统测试,发现问题并进行优化;6. 团队合作与项目展示:组织学生分组合作,完成整个项目,并进行项目展示和评价。
c语言飞机订票系统课程设计一、课程目标知识目标:1. 让学生掌握C语言的基本语法和程序结构,特别是数组、结构体和函数的应用。
2. 使学生了解飞机订票系统的基本原理和功能需求,掌握相关数据结构和算法。
3. 帮助学生理解文件操作在飞机订票系统中的应用,学会读写数据文件。
技能目标:1. 培养学生运用C语言设计小型系统的能力,特别是模块化编程和代码组织能力。
2. 提高学生分析问题、解决问题的能力,学会运用所学知识解决实际订票问题。
3. 培养学生的团队协作能力,通过分组合作完成课程设计。
情感态度价值观目标:1. 激发学生对编程的兴趣,培养计算机编程的思维习惯。
2. 培养学生认真负责、严谨细致的学习态度,注重代码规范和程序调试。
3. 使学生认识到计算机技术在生活中的应用,增强对信息技术的认识和尊重。
课程性质:本课程设计属于实践性课程,以项目为导向,注重培养学生的实际操作能力和团队协作能力。
学生特点:学生已具备C语言基础知识,有一定的编程基础,但缺乏实际项目经验。
教学要求:教师需引导学生掌握飞机订票系统的基本原理,注重培养学生的编程实践能力,关注学生在课程设计过程中的情感态度变化,及时给予指导和鼓励。
在教学过程中,将课程目标分解为具体的学习成果,便于后续的教学设计和评估。
二、教学内容1. C语言基础回顾:复习数组、结构体、函数等基本概念和用法,确保学生具备扎实的编程基础。
相关教材章节:第3章 数组,第4章 结构体和联合,第6章 函数。
2. 飞机订票系统需求分析:讲解飞机订票系统的基本功能需求,如用户注册、航班查询、订票、退票等。
相关教材章节:第12章 项目设计。
3. 数据结构和算法设计:介绍飞机订票系统中涉及的数据结构(如链表、树等)和算法(如排序、查找等)。
相关教材章节:第7章 数据结构,第8章 算法。
4. C语言编程实践:指导学生运用所学知识编写飞机订票系统的各个功能模块。
相关教材章节:第9章 指针,第10章 文件操作。
⼤⼀C语⾔课程设计--飞机订票系统#include#include#includestruct airplane{int num;char begin[20];char end[20];char time[20];double fee;int count;}plane[2014];void home();void input();void del();void scan();void book();void change();void quit();void sou();void save();void read();void home(){int a,i,j;printf("\n\n *****************************欢迎进⼊飞机票务系统*****************************\n\n");printf("==========您好,现在要确认您的⾝份!票务⼈员请按 1 ,旅客请按 0 ===========");scanf("%d",&a);if(a==1)do{printf("\n\t\t^o^o^o^o^o^o^o^o^ 1.输⼊航班信息 ^o^o^o^o^o^o^o^o^\n");printf("\t\t^o^o^o^o^o^o^o^o^ 2.删除航班信息 ^o^o^o^o^o^o^o^o^\n");printf("\t\t^o^o^o^o^o^o^o^o^ 3.浏览航班信息 ^o^o^o^o^o^o^o^o^\n");printf("\t\t^o^o^o^o^o^o^o^o^ 0.退出 ^o^o^o^o^o^o^o^o^\n\n");printf("请在0~3之间选择您要进⾏的操作 ");scanf("%d",&i);if(i>=0&&i<=3)switch(i){case 0: break;case 1:input(); break;case 2: del(); break;case 3:scan(); break;}else{printf("\n输⼊错误!!\n\n\n");continue;}printf("\n\n **************************以⾼度负责的态度做好春运⼯作**************************\n\n");} while(i!=0);if(a==0)do{printf("\n\t\t<><><><><><><><><><> 1.订票 <><><><><><><><><><>\n");printf("\t\t<><><><><><><><><><> 2.改签 <><><><><><><><><><>\n");printf("\t\t<><><><><><><><><><> 3.退票 <><><><><><><><><><>\n");printf("\t\t<><><><><><><><><><> 4.浏览航班信息 <><><><><><>\n");printf("\t\t<><><><><><><><><><> 5.查询 <><><><><><><><><><>\n");printf("\t\t<><><><><><><><><><> 0.退出 <><><><><><><><><><>\n\n");printf("请在0~5之间选择您要进⾏的操作");scanf("%d\n\n",&j);if(j>=0&&j<=5)switch(j){case 0: break;case 1:book(); break;case 2:change(); break;case 3:quit(); break;case 4:scan(); break;}else{printf("\n输⼊错误!!\n\n\n");continue;}printf("\n\n *******************春节即将到来,提前祝您春节快乐,出⾏平安********************\n\n"); } while(j!=0);}void input() // 输⼊航班{char sysm[]="jim007";char youm[20];int i,m;printf("请输⼊密码: ");scanf("%s",youm);if(strcmp(sysm,youm)!=0){printf("输⼊密码错误!请确认您是否是票务⼈员,如不是,请按任意键返回菜单重新选择" ); getchar();getchar();home();}else{system("cls");printf("请问要输⼊⼏个航班信息: ");scanf("%d",&m);printf("\n\n******************************************************************\n\n");for(i=0;i{printf("请输⼊航班号:\n");scanf("%d",&plane[i].num);printf("请输⼊起飞地点:\n");scanf("%s",plane[i].begin);printf("请输⼊降落地点:\n");scanf("%s",plane[i].end);printf("请输⼊起飞时间:\n");scanf("%s",plane[i].time);printf("请输⼊票价:\n");scanf("%lf",&plane[i].fee);printf("请输⼊机票数:\n");scanf("%d",&plane[i].count);}getchar();home();}}void del() //删除模块{char be[20];char en[20];char sysm[]="jim007";char youm[20];int i,w,p,q,k=0;printf("请输⼊密码: ");scanf("%s",youm) ;if(strcmp(sysm,youm)!=0){printf("输⼊密码错误!请确认您是否是票务⼈员,如不是,请按任意键返回菜单重新选择" );getchar();getchar();home();}elseprintf("1.按航班号删除 \n");printf("2.按航线删除 \n");printf("请在1-2中选择删除⽅式: ");scanf("%d",&q);switch(q){case 1:printf("请输⼊航班号: ");scanf("%d",&p);break;case 2:printf("请输⼊起飞地点: ");scanf("%s",be);printf("请输⼊降落地点: ");scanf("%s",en);break;}printf("\n\n航班号\t起飞地点\t降落地点\t起飞时间\t票价\t机票数 \n\n");for(i=0;i{if(q==1&&plane[i].num==p){k++;printf("\n\n%d\t%s\t%s\t%s\t%lf\t%d\n",plane[i].num,plane[i].begin,plane[i].end,plane[i].time,plane[i].fee,plane[i].count); }if(q==2&&strcmp(plane[i].begin,be)==0&&strcmp(plane[i].end,en)==0){k++;printf("\n\n%d\t%s\t%s\t%s\t%lf\t%d\n",plane[i].num,plane[i].begin,plane[i].end,plane[i].time,plane[i].fee,plane[i].count); }}if(k=0)printf("没有找到此航班,⽆法删除!");elseprintf("确定删除请按 1 否则请按 0:\n\n");scanf("%d",&w);if(w==1)for(i=0;i{plane[i].num=0;strcpy(plane[i].begin,"0");strcpy(plane[i].end,"0");strcpy(plane[i].time,"0");plane[i].fee=0;plane[i].count=0;}getchar();getchar();home();}void scan() //浏览{if(m==0)printf("\n\n⽆航班信息\n\n");else{printf("\n\n航班号\t起飞地点\t降落地点\t起飞时间\t票价\t机票数 \n\n");for(i=0;iprintf("\n\n%d\t%s\t%s\t%s\t%lf\t%d\n",plane[i].num,plane[i].begin,plane[i].end,plane[i].time,plane[i].fee,plane[i].count); }getchar();home();}void book() //订票模块{int i,a;struct airplane d;system( "cls" );do{sou();printf("请输⼊您要订的航班号: ");scanf("%d",&d.num);printf("请输⼊您要订的机票数: ");scanf("%d",&d.count);for(i=0;iif(result[i].num==d.num){if(result[i].count!=0&&result[i].count>= d.count){result[i].count=result[i].count- d.count;printf("恭喜您订票成功!祝您旅途愉快!\n");break;}if(result[i].count{printf("此航班只剩下%d张票,订票失败",result [i].count);break;}}printf("\n\n继续订票请按 1 ,退出请按 0 ");scanf("%d",&a);}while(a==1);void change() //改签模块{int i,num1,num2;system( "cls" );do{sou();printf("请输⼊您改签前的航班号: ");scanf("%d",&num1);printf("请输⼊您改签后的航班号: ");scanf("%d",&num2);for(i=0;iif(result[i].num==num1)result[i].count=result[i].count+1;for(i=0;iif(result[i].num==num2)result[i].count=result[i].count-1;printf("恭喜您改签成功!祝您旅途愉快!\n");break;printf("\n\n继续改签请按 1 ,退出请按 0 ");scanf("%d",&a);}while(a==1);void quit() //退票模块{int i,a;struct airplane f;system( "cls" );do{sou();printf("请输⼊您要退订的航班号: ");scanf("%d",&f.num);printf("请输⼊您要退订的机票数: ");scanf("%d",&f.count);if(d.count<0){printf("您输⼊的票数有误,请重新输⼊\n");break;}for(i=0;iif(result[i].num==f.num){result[i].count=result[i].count+ f.count;printf("恭喜您退票成功! \n");break;}elseprintf("抱歉,您输⼊的航班号有误!");printf("\n\n继续订票请按 1 ,退出请按 0 ");scanf("%d",&a);}while(a==1);}void sou() //查询模块{int i,c,d,e,t,j=0;struct airplane a;struct airplane result[20];system( "cls" );printf("\n\n请输⼊起飞时间:");scanf("%s",a.time);printf("\n\n请输⼊起飞地点:");scanf("%s",a.begin);printf("\n\n请输⼊降落地点:");scanf("%s",a.end);printf("请选择排序⽅式( 1:按航班号升序;2:按票价升序)")scanf("%d",&c);printf("\n\n航班号\t起飞地点\t降落地点\t起飞时间\t票价\t机票数 \n\n");for(i=0;i{if(plane[i].time==a.time&&strcmp(plane[i].begin,a.begin)==0&&strcmp(plane[i].end,a.end)==0) result[j]=plane[i]j++;}if(j==0)printf("抱歉,暂时没有该条件的航班!");if(j>0&&c==1){for(d=0;dfor(e=d+1;eif(result[e].num{t= result[e];result[e]= result[e-1];result[e-1]=t;}}if(j>0&&c==0){for(d=0;dfor(e=d+1;eif(result[e].fee{t= result[e];result[e]= result[e-1];result[e-1]=t;}}for(i=0;iprintf("\n\n%d\t%s\t%s\t%s\t%lf\t%d\n", result[i].num, result[i].begin, result [i].end, result[i].time, result[i].fee, result[i].count); }void save() //保存模块{FILE *fp;int i,w=1;system( "cls" );if((fp=fopen("C:\\Users\\Administrator\\Desktop\\plane.txt","w"))==NULL){printf("打开⽂件错误\n");exit(0);}for(i=0;iif(fwrite(fp,sizeof(struct airplane),1, &plane[i])==0){printf("⽂件保存错误!\n");exit(0);w=0;}if(w==1)printf("⽂件保存成功!\n");fclose(fp);getchar();getchar();home();}void read() //读取模块{int i;FILE *fp;if(fp=fopen("C:\\Users\\Administrator\\Desktop\\plane.txt","r")==NULL){printf("⽂件打开失败\n");exit(0);}else{while(!feof(fp))for(i=0;ifread(plane[i],sizeof(struct airplane),1,fp)}getchar();getchar();home();}。
飞机订票系统 c语言课程设计一、课程目标知识目标:1. 理解C语言在开发飞机订票系统中的应用,掌握相关数据结构(如结构体、数组、链表)的使用;2. 学会使用C语言进行文件操作,实现数据的存储和读取;3. 掌握C语言中的模块化编程思想,将系统功能划分为多个函数并实现协同工作。
技能目标:1. 能够运用所学知识,独立设计和实现一个飞机订票系统,包括用户注册、查询航班、预订机票、取消预订等功能;2. 提高问题分析能力,针对实际需求,运用C语言编写合适的算法和程序;3. 培养良好的编程习惯,编写规范、易读、高效的代码。
情感态度价值观目标:1. 培养学生面对复杂问题时,保持积极、主动、合作的态度,勇于克服困难;2. 增强学生的团队协作意识,学会在团队中发挥个人优势,共同完成任务;3. 通过课程学习,让学生认识到编程在实际生活中的应用价值,激发对计算机科学的兴趣。
本课程针对高年级学生,课程性质为实践性较强的课程设计。
在教学过程中,要求学生具备一定的C语言基础,能独立完成程序编写和调试。
课程目标的设定旨在让学生在掌握C语言知识的基础上,进一步提高编程实践能力,培养实际项目开发中的团队协作和问题解决能力。
通过课程学习,使学生能够将所学知识应用于实际项目中,达到学以致用的目的。
二、教学内容1. C语言基础知识复习:数据类型、运算符、控制语句、函数等基本概念;教材章节:第一章至第四章。
2. 数据结构:结构体、数组、链表等;教材章节:第六章、第七章。
3. 文件操作:文件打开、读取、写入、关闭等;教材章节:第十章。
4. 模块化编程:函数定义、调用、参数传递、作用域等;教材章节:第五章、第八章。
5. 飞机订票系统功能设计:- 用户注册、登录功能;- 航班查询、预订、取消预订功能;- 数据存储与读取功能;教材章节:综合应用实例。
6. 编程规范与调试技巧:代码风格、调试方法、性能优化等;教材章节:第十二章。
教学内容安排与进度:第一周:C语言基础知识复习;第二周:数据结构学习;第三周:文件操作学习;第四周:模块化编程;第五周:飞机订票系统功能设计与实现;第六周:编程规范与调试技巧,项目完善与优化。
c 语言飞机订票系统课程设计一、课程目标知识目标:1. 学生理解C语言中结构体、数组、函数等基本概念,并能运用这些知识设计飞机订票系统。
2. 学生掌握C语言文件操作,实现对飞机票数据的存储和读取。
3. 学生了解C语言中字符串处理函数,并能够运用字符串操作进行信息输入和输出。
技能目标:1. 学生能够运用结构体和数组创建和管理飞机票数据,实现票务信息的增删改查功能。
2. 学生能够编写C语言程序,实现用户界面交互,包括用户登录、航班查询、购票、退票等功能。
3. 学生能够利用文件操作保存和加载飞机订票系统数据,保证数据的持久性。
情感态度价值观目标:1. 学生培养编程的兴趣,激发学习C语言的积极性,形成自主学习的习惯。
2. 学生通过合作完成课程设计,培养团队协作能力和沟通能力,增强集体荣誉感。
3. 学生了解飞机订票系统的实际应用,认识到编程知识在解决实际问题中的价值,增强学以致用的意识。
课程性质:本课程设计为实践性课程,旨在让学生将所学的C语言知识应用于实际项目中,提高编程能力和解决实际问题的能力。
学生特点:学生已具备C语言基础知识,具有一定的编程能力,但对实际项目的开发尚缺乏经验。
教学要求:教师需引导学生复习相关知识点,提供必要的技术支持,鼓励学生自主探究和团队协作,注重培养学生的实践能力和创新能力。
在教学过程中,关注学生的个体差异,给予个性化指导,确保每位学生都能在课程中取得进步。
通过课程设计,使学生将理论知识与实践相结合,提高综合运用C语言知识解决实际问题的能力。
二、教学内容1. 复习C语言基础知识:结构体、数组、函数、指针、文件操作、字符串处理函数等。
相关教材章节:第一章至第六章- 结构体与数组:理解结构体的定义和用法,掌握结构体数组的操作。
- 函数:掌握函数的定义、调用和参数传递。
- 指针:理解指针的概念和操作,掌握指针在数组、函数中的应用。
- 文件操作:掌握文件的打开、读写、关闭操作。
- 字符串处理函数:熟悉常用的字符串处理函数,如strcpy、strcat等。
c 航空订票系统课程设计一、课程目标知识目标:1. 让学生掌握航空订票系统的基本概念、功能模块及其运行原理。
2. 了解数据库在航空订票系统中的应用,包括数据存储、查询和更新。
3. 掌握面向对象编程思想在航空订票系统开发中的应用。
技能目标:1. 培养学生运用所学知识设计并实现一个航空订票系统的能力。
2. 提高学生分析问题、解决问题的能力,使其能够根据实际需求设计合适的系统功能。
3. 培养学生的团队协作能力,通过分组合作完成课程设计。
情感态度价值观目标:1. 培养学生对航空订票系统及其相关技术的兴趣,激发其学习积极性。
2. 培养学生认真负责、严谨求实的科学态度,养成良好的编程习惯。
3. 通过课程设计,使学生认识到所学知识在实际生活中的应用,增强其将理论应用于实践的意识。
课程性质:本课程设计旨在让学生将所学的计算机科学与技术知识应用于实际项目中,提高其解决实际问题的能力。
学生特点:学生已具备一定的编程基础和数据库知识,具备分析、设计和实现小型系统的能力。
教学要求:教师需引导学生将理论知识与实际应用相结合,注重培养学生的动手能力和团队协作精神,确保学生能够完成课程设计任务。
在教学过程中,将目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 航空订票系统概述:介绍航空订票系统的基本概念、发展历程及其在航空业的重要作用。
教材章节:第一章 航空订票系统概述内容:系统定义、发展历程、功能模块。
2. 航空订票系统功能模块设计:详细讲解系统各个功能模块的设计,包括用户界面、航班查询、预订、支付等。
教材章节:第二章 航空订票系统功能模块设计内容:用户界面设计、航班查询设计、预订设计、支付设计。
3. 数据库设计与实现:介绍数据库在航空订票系统中的应用,包括数据表设计、数据存储、查询和更新。
教材章节:第三章 数据库设计与实现内容:数据表设计、数据库操作、SQL语句编写。
4. 面向对象编程在航空订票系统中的应用:讲解面向对象编程思想在系统开发中的应用。
c语言课程设计–飞机订票系统一、教学目标本课程的教学目标是使学生掌握C语言编程的基本知识,能够使用C语言设计并实现一个简单的飞机订票系统。
具体分为以下三个部分:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数等编程基础。
2.技能目标:学生能够运用C语言进行程序设计,解决实际问题,如设计飞机订票系统的各个功能模块。
3.情感态度价值观目标:培养学生对计算机科学的兴趣,提高学生解决问题的能力,培养学生的团队合作精神。
二、教学内容教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等编程基础,以及如何使用C语言设计并实现一个简单的飞机订票系统。
具体安排如下:1.C语言基本语法和数据类型2.C语言运算符和控制结构3.C语言函数和数组4.C语言指针和字符串5.飞机订票系统的设计和实现三、教学方法为了达到课程目标,我们将采用以下教学方法:1.讲授法:用于讲解C语言的基本语法、数据类型、运算符、控制结构、函数等编程基础。
2.案例分析法:通过分析实际案例,让学生了解如何使用C语言设计并实现飞机订票系统。
3.实验法:让学生动手编写代码,实现飞机订票系统的各个功能模块。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《C程序设计语言》或《C语言程序设计》2.参考书:《C Primer Plus》或《C和指针》3.多媒体资料:教学PPT、视频教程4.实验设备:计算机、网络环境五、教学评估为了全面、客观地评估学生的学习成果,我们将采用以下评估方式:1.平时表现:通过课堂参与、提问、小组讨论等环节,评估学生的学习态度和积极性。
2.作业:布置课后编程作业,评估学生对C语言知识的掌握程度及编程能力。
3.考试:期末进行闭卷考试,评估学生对C语言编程基础知识的掌握情况。
4.项目实践:要求学生分组设计并实现一个简单的飞机订票系统,评估学生的实际编程能力和团队协作能力。
飞机订票管理系统 C 课程设计一、课程目标知识目标:1. 让学生掌握数据库管理系统的基本原理,理解飞机订票管理系统的数据组织与数据模型。
2. 使学生了解并运用C语言编程实现订票管理系统的功能,包括航班查询、座位预订、订单管理等功能。
3. 帮助学生理解飞机订票管理系统的业务流程,掌握相关算法和数据结构。
技能目标:1. 培养学生运用C语言进行结构化编程的能力,能独立编写、调试飞机订票管理系统的相关功能模块。
2. 提高学生分析问题、解决问题的能力,使其能针对实际需求设计合适的算法和数据结构。
3. 培养学生的团队协作能力,通过分组合作完成课程设计。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,培养其主动学习和探究的精神。
2. 培养学生认真负责的工作态度,严谨的学术作风,养成良好的编程习惯。
3. 增强学生的社会责任感,使其认识到所学知识在实际应用中的价值。
课程性质:本课程设计属于实践性课程,旨在让学生将所学的C语言知识和数据库原理应用到实际项目中,提高学生的动手能力和实际操作技能。
学生特点:学生已经掌握了C语言的基础知识和数据库原理,具有一定的编程能力和问题分析能力。
教学要求:教师需引导学生运用所学知识解决实际问题,注重培养学生的实践能力和团队协作精神,同时关注学生的情感态度价值观的培养。
通过课程设计,使学生在实践中巩固知识,提高技能,培养正确的价值观。
二、教学内容1. C语言基础回顾:数据类型、运算符、控制结构、函数、数组、指针、结构体等。
2. 数据库基础知识:数据库概念、数据模型、关系数据库、SQL语言基础。
3. 飞机订票管理系统需求分析:航班管理、座位管理、用户管理、订单管理等功能需求。
4. 数据库设计:设计飞机订票管理系统的数据表,包括航班信息表、座位信息表、用户信息表、订单信息表等。
5. C语言实现飞机订票管理系统:- 航班查询模块:实现按航班号、起飞时间等查询航班信息的功能。
- 座位预订模块:实现座位的选择和预订功能。
C语言课程设计题目:飞机订票系统专业:。
学号:。
姓名:。
任课教师:。
C语言课程设计报告一、课程设计报告正文(1)课程设计题目的原文;假定民航机场共有n个航班:航班号、起始站、终点站、飞机号、飞机时间、乘员定额、余票量。
试设计一民航订票系统,使之能提供下列服务:航班信息录入功能(文件保存)完成航班信息浏览功能;查询航线(至少一种查询方式)。
(2)题目的分析(需求分析);任务:通过此系统可以实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中)浏览:航班信息浏览功能需要提供显示操作;查询:可提供按照航班号、起点站、终点站、飞行时间、查询,可以查询某个航线的情况(如,输入航班号,起飞抵达城市,确定航班是否满仓);另外要提供键盘式选择菜单以实现功能选择。
要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能。
可以建立航班结构体,结构体成员包括航班号、起点站、终点站、飞行时间、预售票总数、已售票数。
(3)整体设计与模块划分;根据需求分析,该程序可分为以下四大模块:飞机订票系统输入模块显示模块查询模块退出模块(4)代码设计;包括——各功能模块的流程图;重要模块中关键部分的代码分析;关键函数的算法设计和分析等等;二、航班基本信息输入模块航班信息录入函数:航班信息浏览函数:[流程图]显示信息查询模块:分析:基本信息的查询按查询可供选择的方式比较丰富,可按航班号查询。
在查询小模块中采用了直接查找的方法。
本模块可以通过多种查询方式进行完善。
这是本程序没有做的地方。
[流程图](一)核心源程序清单和执行结果:a)源程序清单:#include<stdio.h>#include<stdlib.h>#include<io.h>#include<math.h> //标准输入、输出头文件#include<string.h> //包含字符串函数处理头文件#include<process.h> //包含access函数的头文件#define N 1000 //定义最多的航班数#define PRINT "%d\t\t%s\t\t%s\t\t星期%s\t\t%d\n ",s[i].num,s[i].start,s[i].over,s[i].time,s[i].count //宏定义输出格式struct air //定义结构体数组{int num; //定义航班号char start[20]; //航班起始站char over[20]; //终点站char time[10]; //飞行时间int count; //机票数量}s[N];int i,m=0; //定义全局变量char ii[10];void add(); //函数声明增加航班信息函数void print(); //显示航班信息void search(); //查找航班信息void read(); //读取文件void save(); //保存文件void output(); //输出格式void chushihua(); //系统初始化void build(); //建立数据文件void main() //主函数{int j;chushihua(); //系统初始化判断是否存在原始数据文件printf(" O(^_^)O欢迎使用飞机订票系统O(^_^)O \n"); //打印出系统主界面do{printf("============================================================= =================== ");printf(" 1.增加航班信息\n"" 2.浏览航班信息\n"" 3.查找航班信息(按航班号)\t\t\n"" 0.退出\n");printf("============================================================= =================== ");printf("请在0-3中选择以回车键结束:");scanf("%d",&j);switch(j){case 1: add(); //调用增加航班函数break;case 2:print(); //调用显示模块break;case 3:search(); //调用查找模块break;case 0: //退出系统save();printf("谢谢使用,再见!( ^_^ )/~~ \n ");break;}}while(j!=0); //判断是否调用其他函数}void chushihua() //定义系统初始化函数{if(access("hangban.dat",0)){build();}elseread();}void build() //定义建立数据文件函数{FILE *fp; //定义文件指针if((fp=fopen("hangban.dat","wb"))==NULL) //打开文件并判定是否出错{printf("创建文件失败! "); //打印出错提示getchar();return;}printf("请依次输入航班信息(以回车键结束):\n"); //打印提示信息printf("-------------------------------------------------------------------------- \n");for(i=0;i<N;i++){printf("请输入航班号: ");scanf("%d",&s[i].num); //输入航班号printf("请输入起始站: ");scanf("%s",s[i].start); //输入起始站printf("请输入终点站: ");scanf("%s",s[i].over); //输入终点站printf("请输入时间(星期几): ");scanf("%s",s[i].time); //输入时间printf("请输入机票数: ");scanf("%d",&s[i].count); //输入机票数fwrite(&s[i],sizeof(struct air),1,fp);m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);if(strcmp(ii,"y")!=0) //判断是否继续添加航班信息{fclose(fp); //关闭文件return;}}}void read() //定义读取文件函数{FILE *fp;if((fp=fopen("hangban.dat","r"))==NULL){printf("创建文件失败! ");getchar();return;}i=0;while(!feof(fp)){fread(&s[i],sizeof(struct air),1,fp); //逐块读取数据i++;m++; //计算存在航班数}m--;fclose(fp);}void save() //定义保存函数{FILE *fp;if((fp=fopen("hangban.dat","wb"))==NULL){printf("创建文件失败! ");getchar();return;}for(i=0;i<m;i++) //逐块保存数据fwrite(&s[i],sizeof(struct air),1,fp);fclose(fp);}void add() //定义增加航班信息函数{do{printf("请依次输入您要增加的航班信息(以回车键结束): \n"); //打印提示信息printf("-------------------------------------------------------------------------- \n");printf("请输入航班号: ");scanf("%d",&s[m].num); //读取航班号printf("请输入起始站: ");scanf("%s",s[m].start); //读取起始站printf("请输入终点站: ");scanf("%s",s[m].over); //读取终点站printf("请输入时间: ");scanf("%s",s[m].time); //读取时间printf("请输入机票数: ");scanf("%d",&s[m].count); //读取机票数m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);}while(!strcmp(ii,"y")); //判断是否继续添加}void output() //定义输出格式函数{printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n"); //信息标题for(i=0;i<m;i++)printf(PRINT);//打印出信息}void print() //定义显示航班信息函数{printf("\n目前我们有如下航班:\n");output(); //调用输出格式函数printf("\n请按回车键返回上层菜单");getchar();getchar();}void search() //定义查询函数{int n;do{printf("\n请输入航班号:");scanf("%d",&n); //输入查询的航班号for(i=0;i<m;i++){if(s[i].num==n) //按航班号判定输出条件{printf("\n您所查找的航班信息为:\n ");printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n\n");printf(PRINT); //显示信息printf("\n查询完毕,按回车键继续");getchar();getchar();return;}}printf("\n对不起,没有您需要的信息!\n ");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s",ii);}while(!strcmp(ii,"y"));//判定是否重新查找}1)第一次运行程序(输入初始数据)界面提示输入原始数据:请输入航班号→请输入起始站→请输入终点站→请输入飞行时间→请输入机票数。