学生选修课程系统 顾建伟(12网络2单 44)_第1页
学生选修课程系统 顾建伟(12网络2单 44)_第2页
学生选修课程系统 顾建伟(12网络2单 44)_第3页
学生选修课程系统 顾建伟(12网络2单 44)_第4页
学生选修课程系统 顾建伟(12网络2单 44)_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 得分:信电工程学院课程设计报告学生选修课程系统 课程:高级语言程序设计 班级:12网络2单学号: 姓名:顾建伟 指导教师: 戴磊 2013年 7 月1日目 录 1程序目标及功能- 31.1课题背景-31.2系统功能 -31.3设计要求 -32程序功能模块组成及流程图 -42.2系统功能模块-42.3各模块流程图-53程序主要数据结构及函数列表 -73.1 程序中使用的数据结构-73.2 函数列表-74程序代码及运行结果 -8总结与体会 -12 1 程序目标及功能1.1 课题背景学习C语言已经有一年了,经过一年的学习,也学到了不少新的C语言核心知识。同时学了一些处理复杂问题的办法,现在运用所学

2、的知识,结合网络资源。自己动手编写了一个学生课程选课系统。 1.2系统功能学生选修课程系统可实现课程信息输入、课程信息输出、课程信息查询、学生选课等功能。程序要求提供简单友好易于操作的界面。程序以C语言开发。1.3设计要求1.基本要求(1)假定有n门课程,每门课程有课程编号、课程名称、课程性质(专业选修课、公选课)、总学时、总学分、理论学时、实验学时、开课学期、已选修本课程的学生人数等信息;每门课最多允许60个学生选修。(2)选修信息文件,用来保存每个学生选修课程的信息,每条记录包括:学生的学号、所选修的课程编号和课程名称。(3)系统以菜单方式工作;(4)用函数分别实现动态链表的建立、动态链表

3、输出等功能;(5)界面友好,程序中加入必要的注释;(6)函数功能要划分好(结构化程序设计);函数要求使用指针作形参。(7)学生选修一门课后,要同时更新课程信息和选修信息文件。2. 系统结构及模块要求:(1) 程序主界面包括程序名称及编程者学号、姓名、班级;同时要求输入功能号码,选择进入功能模块程序。主界面格式及选择项(供参考)如下图1“系统主菜单”:(中文英文均可)(2)各模块功能:A. 课程信息录入。建立课程信息链表,由键盘输入课程信息。B. 课程信息输出。输出所有课程信息。C. 查询课程。按课程编号、课程名称、学分、按课程性质、开课学期等查询(至少实现1种)。D. 学生选修课程。输入学生学

4、号和课程编号,形成一条选课信息,保存在“选修信息文件”里。 E. 查询学生选修的课程。输入学生学号,输出该生已选修的课程编号和课程名称。F. 保存课程信息到磁盘文件。建立一个磁盘文件,把所建立的课程表写入文件。2程序功能模块组成及流程图 2.2系统功能模块 学生选修课程系统查询选课信息浏览选课信息统计选课情况录入选课信息退出选课课程查询学生选课进入选课操作按学号查询名称退出系统.总学时 性质按课程性质按 学 分编号2.3各模块流程图1.录入选课信息 2.浏览选课信息结束继续开始输入写入文件并储存开始输出课程信息 1 2退出系统返回主菜单3.查询选课信息 4.统计选课情况 开始2开始查看学生选课

5、信息判断查询方法 结束输入按课程性质按学分 输出 结束5. 进行选课操作 6.查询学生选课 开始输入、选课开始判断是否是要选的课程 选定、输出结束N输入学生学号 选定、输出 结束7.退出选课系统 开始输出提示信息结束、退出系统3程序主要数据结构及函数列表 3.1 程序中使用的数据结构struct courseint num;char name20;char kind10;int time;int ttime;int etime;int mark;int term;struct studentchar snum20;long cnum;char cname20;3.2 函数列表1. 课程信息录入

6、 void input_xk_info()2.课程信息浏览void liulan_xk_info()3.课程信息查询void chaxun_xk_info()4. 统计选课情况 void tongji_xk_qk()5.学生选修课程void into_xk_cz()6.按学号查询学生选修void chaxun_stu_xk()7.主菜单void main()4程序代码及运行结果 主界面1.录入选课信息2.浏览选课信息3. 查询选课信息4. 统计选课信息5. 进行选课操作6.查询学生选课7. 退出系统5总结与体会 通过该系统的课程设计分析,掌握了模块化设计的方法,理解和运用了结构化程序设计的思想

7、和方法,掌握和提高了运用C语言进行程序设计的能力。程序设计的过程,实际上是确定解决问题的详细步骤,而这个步骤通常叫做流程,在程序设计过程中理清楚整个问题的流程很重要,然后采取逐步细化的方法实现整个程序。对于一个较大的应用程序,我们一般不可能一次就设计出一个很完善的系统。通常要先设计满足基本要求的系统,然后再测试或者在使用的过程中不断完善,慢慢地做成一个功能很完善选修课程管理系统。本系统程序功能仍然不够完善。例如信息表达方式不丰富,比较单一,以后有待改进。6 程序源代码#include#include#include#includestruct courseint num;char name20

8、;char kind10;int time;int ttime;int etime;int mark;int term;struct studentchar snum20;long cnum;char cname20;/*课程信息录入*/void input_xk_info()void main();FILE *fp;struct course c;int count;int i;if(fp=fopen(d:course.txt,a+)=NULL)printf(cannot open filen);printf(n请输入课程门数:n);scanf(%d,&count);printf(编号 名称 性质(专业选修课、公选课) 总学时 理论学时 实验学时 总学分 开课学期n);for(i=0;i6|n0)printf(n输入错误!请重新输入!n);scanf(%d,&n);else w=1;while(w=0);switch(n)case 1:input_xk_info();break;case 2:liulan_xk_info();break;case 3:chaxun_xk_info();break;case 4:tongji_x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论