学生选课系统---C语言课程设计

上传人:206****923 文档编号:90091632 上传时间:2019-06-08 格式:DOC 页数:13 大小:133KB
返回 下载 相关 举报
学生选课系统---C语言课程设计_第1页
第1页 / 共13页
学生选课系统---C语言课程设计_第2页
第2页 / 共13页
学生选课系统---C语言课程设计_第3页
第3页 / 共13页
学生选课系统---C语言课程设计_第4页
第4页 / 共13页
学生选课系统---C语言课程设计_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《学生选课系统---C语言课程设计》由会员分享,可在线阅读,更多相关《学生选课系统---C语言课程设计(13页珍藏版)》请在金锄头文库上搜索。

1、西安理工大学C语言课程设计任务:题目:学生选修课程系统设计功能:假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息。试设计一选修课程系统。分步实施:1、 初步完成总体设计,搭好框架,确定人机对话界面,确定函数个数;2、 建立一个文件,将每条记录信息写入文件中并能显示于屏幕上3、完成上述添加、查找(课程编号、课程名称、课程性质等)、修改等功能。4、进一步要求:学生选修课程(可选项)要求:1、用C语言实现程序设计;2、利用结构体数组实现信息的数据结构设计;3、系统的各个功能模块要求用函数的形式实现;4、界面友好(良好的人机交互),程序加必

2、要的注释。课程设计实验报告要求:1、预习报告:题目、课程设计任务、数据结构、程序的总体设计(算法)、模块划分 。2、实验总结报告:流程图、主要源程序代码(需打印)、测试情况及调试中问题与解决方案、小结等。源程序代码:#define N 20 /*宏定义最多课程数,即结构体数组长度*/#include#include#includestruct xkxtint num; /*课程编号*/char name20; /*课程名称*/char kind10; /*课程性质*/int stime; /*总学时*/int ttime; /*授课学学时*/int etime; /*实验或上机学时*/ flo

3、at score; /*学分*/int term; /*开课学时*/xN;int size1,size2;void newbuild() /*新建课程信息函数*/FILE *fp;int i; fp=fopen(xk.txt,wb); /*打开文件并判断是否打开*/for(i=0;isize1;i+) /*写入文件并判断是否写入*/if(fwrite(&xi,sizeof(struct xkxt),1,fp)!=1)printf(n文件写入错误n);exit(0);elseif(i=0)printf(n你输入的内容为:n); printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*

4、实验或上机学时*学分*开课学时*n); printf(%5d%10s%8s%8d%10d%14d%9.1f%8dn,xi.num, xi.name,xi.kind,xi.stime,xi.ttime,xi.etime,xi.score,xi.term);fclose(fp);void add() /*添加课程信息函数*/FILE *fp;int i;if(fp=fopen(xk.txt,ab)=NULL) /*打开文件并判断是否打开*/printf(n不能打开此文件n);exit(0);for(i=0;isize2;i+) /*写入文件并判断是否写入*/if(fwrite(&xi,sizeof

5、(struct xkxt),1,fp)!=1)printf(n文件写入错误n); exit(0);elseif(i=0)printf(n你输入的内容为:n); printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*n); printf(%5d%10s%8s%8d%10d%14d%9.1f%8dn,xi.num, xi.name,xi.kind,xi.stime,xi.ttime,xi.etime,xi.score,xi.term);fclose(fp);void search() /*查找课程信息函数*/ FILE *fp; int i,n;int

6、 num;char name20;char kind10;if(fp=fopen(xk.txt,rb)=NULL) /*打开文件并判断是否打开*/printf(n不能打开此文件n);exit(0);printf(n全部内容为:n);printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*n);for(i=0;fread(&xi,sizeof(struct xkxt),1,fp)!=0;i+) /*写入文件并在屏幕输出*/printf(%5d%10s%8s%8d%10d%14d%9.1f%8dn,xi.num,xi.name,xi.kind,xi.st

7、ime,xi.ttime,xi.etime,xi.score,xi.term);printf(n请输入你要按哪个类型查找:1,课程编号;2,课程名称;3,课程性质。n);do /*根据类型查找课程*/ scanf(%d,&n); switch(n)case 1:printf(n请输入课程编号:n);scanf(%d,&num); for(i=0;i20;i+)if(num=xi.num)printf(n你要查找的课程信息为:n);printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*n); printf(%5d%10s%8s%8d%10d%14d%

8、9.1f%8dn,xi.num, xi.name,xi.kind,xi.stime,xi.ttime, xi.etime,xi.score,xi.term);break;break;case 2:printf(n请输入课程名称:n);scanf(%s,name); for(i=0;i20;i+)if(strcmp(name,xi.name)=0)printf(n你要查找的课程信息为:n);printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*n); printf(%5d%10s%8s%8d%10d%14d%9.1f%8dn,xi.num, xi.n

9、ame,xi.kind,xi.stime,xi.ttime, xi.etime,xi.score,xi.term);break;break;case 3:printf(n请输入课程性质:n);scanf(%s,kind); for(i=0;i20;i+)if(strcmp(kind,xi.kind)=0)printf(n你要查找的课程信息为:n);printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*n); printf(%5d%10s%8s%8d%10d%14d%9.1f%8dn,xi.num, xi.name,xi.kind,xi.stime,

10、xi.ttime, xi.etime,xi.score,xi.term);break;break;default:printf(n输入错误,请重新输入:n);while(n3); /*实现重新输入的功能*/if(i=20)printf(n无法找到所对应的课程,请重新查找。n);fclose(fp);void modify() /*修改课程信息函数*/FILE *fp;int flag=0,size=0,n,i;int num2,num1;char name220,name120;char kind210,kind110;int stime2;int ttime2;int etime2;float score2;int term2;if(fp=fopen(xk.txt,rb)=NULL) /*打开文件并判断是否打开*/printf(n不能打开此文件n);exit(0);printf(n原来内容为:n);printf(n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*n);for(i=0;fread(&xi,sizeof(struct xkxt),1,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号