版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. vCHANGSHAUNIVERSITYCHANGSHAUNIVERSITY OFOF SCIENCESCIENCE & & TECHNOLOGYTECHNOLOGY课程设计(论文)课程设计(论文)题目:学生选修课管理系统设计题目:学生选修课管理系统设计学生:江元学生:江元学号:学号:201153100121201153100121班级班级: : 信息与计算科学信息与计算科学 11-0111-01 班班所在院部所在院部: : 数学与计算科学学院数学与计算科学学院指导教师:龚红仿指导教师:龚红仿 20132013 年年 1 1 月月学生选修课管理系统设计学生选修课管理系统设计学
2、学生生:江元:江元学号:学号:201153100121201153100121班级:信计班级:信计 11-0111-01 班班指指导导教教师师 :龚红仿:龚红仿完完成成日日期期 : : 2 20 01 13 3 年年 1 1 月月 1 11 1 日日学生选修课管理系统设计摘要. vC 语言课程设计和现代计算机技术的实际应用相结合,是我们在本阶段学完理论课程之后对自己该方面的能力的一次很好的检验,从开始的算法思路到运行调试后的美观的图形界面以及另人兴奋的可用程序,都是一个很好的学习和锻炼的过程。使我们巩固了原有的理论知识,培养了我们灵活运用和组合集成所学过知识及技能来分析、解决实际问题的能力。使
3、我们体会到自身知识和能力能在实际中的应用和发挥。不但可以激发创新意识,还可以开发创造能力、培养沟通能力。这次学生选修课系统管理设计时间虽然仅有一个星期,但确实使我受益非浅。通过学生选修课系统管理设计我丰富了计算机操作经验,更加深了对 C 语言的了解,熟悉了其环境,更增强了对 Microsoft Visual C+ 6.0的使用技巧。C 语言是在国外广泛使用的一种计算机语言。语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。同时,我觉得 C 语言应该是操作和理论相结合的课程,在不断地编写中去思考,两者是不可分割的。我们在编写一个较大的程序时
4、应该把它分开成几个小程序来看,这样会容易得多。关键词:学生选修课系统管理;C 语言课程设计;计算机技术;模块化程序设计;信息录入;浏览信息;选课;查询STUDENTSSTUDENTS ELECTIVEELECTIVE COURSESCOURSES MANAGEMENTMANAGEMENT SYSTEMSYSTEM DESIGNDESIGNABSTRACTABSTRACTC language curriculum design and modern computer technology in the practical application of the combination, we ar
5、e at this stage of . vlearning theory course on their own side of the ability of a good test, from the beginning of the algorithm to run after the beautiful graphical interface and exciting available procedures, is a very good learning and training process. We consolidate the original theory of know
6、ledge, cultivate our flexible applicat. v一一: :题题目目 要要求求 假定有 n 门课程,每门课程都有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于 60)自由选课.试设计一选修课程系统,使之能提供一下功能: (1) 系统以菜单方式工作; (2) 课程信息和学生信息的录入功能(课程信息有文件保 存)-输入; (3) 课程信息浏览功能-输出; (4) 查询功能(至少一种查询方式)-算法; (5) 按学分查询; (6) 某门课程学生选修情况(可选项). 二二: :数数据据结结构构设设计计
7、 本系统的实现,全部采用链表这种数据结构,用链表实现课程的查找,添加,删除,课程的选修,追加选修的课程.课程信息采用结构体这种数据结构. 三三: :系系统统大大纲纲 主主 菜菜 单单 管管理理员员菜菜单单 学学生生菜菜单单 浏浏览览课课程程 查查询询课课程程 添添加加课课程程 删删除除课课程程 浏浏览览所所有有课课程程 查查询询课课程程信信息息 选选择择选选修修课课程程 删删除除错错选选的的课课程程 . vion and integration of the knowledge learned and skills of analysis, ability to solve practical
8、 problem. So that we realize that their knowledge and ability in practical application and play. Can not only stimulate consciousness of innovation, also can develop creative ability, communication skills training. The student elective system management design time although only a week, but it does
9、make me benefit. Students elective system management design my rich experience in computer operation, more deep understanding of the C language, familiar with the environment, more increased to Microsoft Visual C+ 6 using skills.The C language is widely used at home and abroad a computer language. L
10、anguage feature-rich, expressive capability is strong, flexible and convenient use, not only has the advantages of high-level language, but also has many of the characteristics of low-level language, suitable for the preparation of system software. At the same time, I think C language should be the
11、operation of combining theory and curriculum, constantly writing to think, the two are inseparable. Us in the preparation of a larger process should divide it into several small procedures, it would be much easier. vKeyKey wordswords:students elective system management; C language curriculum design;
12、 computer technology; modular design; information; information query; selection;目录1、需求分析12.1 概要设计12.1 模块设计及图示12.2 主函数流程设计23 详细设计33.1 程序中的数据类型33.2 函数运行过程详解34、设计和调试分析134.1 调试中遇到的问题134.2 算法复杂度分析154.3 经验和体会155、用户使用说明166、测试数据和测试结果16参考文献221 需求分析假定有 N 门课程,每门课程有课程编号,课程名称,课程性质,总学分,授课学时,实验上机学时,学分,开课学期等信息,学生可按
13、要求(如总学分不得少于 60)自由选课。要求设计一选修课程系统,使之能提供以下功能:. v(1)课程信息录入功能(课程信息用文件保存)-输入;(2)课程信息浏览功能-输出;(3)查询功能:(多种查询方式:一种、任意两种组合、三种都能满足)-算法;(1)按学分查询(2)按课程性质查询;(3)按课程名称查询;要求:(1)用 C 语言实现系统,源程序要有适当的注释,使程序容易阅读;(2)函数功能要划分好(结构化程序设计) ;(3)至少采用文本菜单界面(如果能采用图形菜单界面更好) ;(4)可以增加新功能模块2 概要设计本程序功能模块根据程序设计的需求,综 4.0 合程序的实用性、智能化得考虑,将程序
14、划分为 6 个模块分别编写:2.1 五个模块分别为:(1)浏览课程信息模块(2)查询课程信息模块(3)进入系统进行选课模块(4)选课情况统计模块(5)录入选课信息模块将备选课程信息录入录入选课信息已选信息学生选课并记录按学分查询按课程性质查询按课程名称查询查询课程信息进入选课输出选课情况选课情况统计学生选修课程管理系统输出文件全部信息浏览课程信息. v2.2 主函数的流程设计:学生选课系统执行主流程如图所示,先执行主函数中显示菜单函数,通过循环和按键操作来执行相应的操作。按键的有效键值为 05 之间的任意数值,其他按键为无效输入。各个按键的执行功能为:“1”:浏览已录入的选修课课程信息调用函数
15、,browser();“2”:通过不同的方式查找记录,调用函数 search();“3”:进入系统进行选课,调用函数 xuan_ke();“4”:查看课程已选情况,调用函数 xuanke_information();“5”:录入选修课信息,调用函数 input();“0”:退出系统;3 详细设计3.1 程序中定义的数据类型3.1、1 定义与课程有关的结构体struct course int num; /*课程编号*/char name20; /*课程名称*/ char kind10; /*课程性质*/int taltime,ttime,etime,mark,term; /*课程时间,学分,开课
16、信息等*/;开始主函数是否继续进行相应的操作结束输入【05】中所要操作的项目对应的数字. v3.1.2 定义与学生有关的结构体struct studentint snum;/*学生学号*/intum;/*所选课程编号*/charame20;/*所选课程名称*/;3.2 每个函数的过程详解3.2.1void f1();函数原型:void f1();函数源程序:void f1()/*常用函数 2*/printf(n 课程编号课程名称课程性质授课学时实验或上机学时总学时学分开课学期:n);函数功能及实现:此函数仅包含输出语句,在课程信息输出之前调用此函数,打印出表头信息3.2.2void menu(
17、);函数原型:void menu()函数源程序:void menu()/*主菜单*/ Printf(“nnn”);. vprintf( 欢迎使用学生选课系统! n); printf( * n);printf( * 1-浏览选课信息 2-查询选课信息 * n); printf( * 3-进入选课操作 4-选课情况统计 * n);printf( * 5-录入选课信息 0-退出选课系统 * n); printf( * n);printf( 请选择输入选项编号(请先选择 5 进行课程信息录入): );函数功能及实现:此函数为输出菜单,进入系统后提示可根据供选择的项目进行后续操作。3.2.3void b
18、rowser();函数原型:void browser();函数源程序:/*浏览选课信息*/void browser(). vFILE *fp;/*定义指向文件的指针*/struct course c;/*定义课程结构体变量 c*/if(fp=fopen(course.txt,r)=NULL) printf(nCannot open course!n);f1(); for(;!feof(fp);) /*直到文件结束*/fscanf(fp,%d %s %s %d %d %d %d %dn,&c.num,&,&c.kind,&c.ttime,&c.
19、etime,&c.taltime,&c.mark,&c.term); /*将课程信息写入文件*/printf(%5d%12s%9s%9d%12d%12d%8d%9dn,c.num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);/*格式化输出*/ fclose(fp);/*关闭文件*/menu();函数功能及实现:此函数先定义指向文件的指针*fp,课程结构体变量 c,通过 if 语句判断文件是否存在,在调用函数 f1(),输出表头信息,通过 for 循环并使用 fscanf 函数将文件中的课程信息读出并通过
20、printf 打印到屏幕上,再通过 fclose 函数关闭文件。3.2.4void search();. v函数原型:void search();函数源程序:/*查询选课信息*/void search()FILE *fp; /*定义文件指针变量*/struct course c;/*定义学生结构体变量 c*/int score;char kind10;char name20;int b;/*输入需要的查询课程信息的方式*/printf(n 1.按学分查询nn);printf(n 2.按课程性质查询nn);printf(n 3.按课程名称查询nn);printf( 请选择查询方式,输入选项数字:
21、);scanf(%d,&b);for(;b3;)printf( 输入错误,请重新输入!);scanf(%d,&b);/*按学分查询*/if(b=1)开始打开文件查看学生选课信息判断查询方法结束2输入按课程性质查按学分查1按名称查询. v printf(n 请输入您要查询的学分: );scanf(%d,&score);if(fp=fopen(course.txt,r)=NULL)printf(nCannot open course!n);f1();for(;!feof(fp);)fscanf(fp,%d%s%s%d%d%d%d%dn,&c.num,&c.n
22、ame,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);if(c.mark=score)printf(%5d%12s%9s%9d%12d%13d%8d%9dn,c.num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);/*按课程细致查询*/else if(b=2)printf(n 请输入您要查询的课程性质: );scanf(%s,&kind);if(fp=fopen(course.txt,r)=NULL)printf
23、(nCannot open course!n);. vf1();for(;!feof(fp);) fscanf(fp,%d%s%s%d%d%d%d%dn,&c.num,&,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);if(strcmp(c.kind,kind)=0)printf(%5d%12s%9s%9d%9d%11d%11d%11dn,c.num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term)
24、;/*按课程名称查询*/else if(b=3)printf(n 请输入课程名称:);scanf(%s,&name);if(fp=fopen(course.txt,r)=NULL) printf(nCannot open course!n);f1();for(;!feof(fp);). vfscanf(fp,%d%s%s%d%d%d%d%dn,&c.num,&,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);if(strcmp(,name)
25、=0)printf(%5d%12s%9s%9d%9d%11d%11d%11dn,c.num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);elseprintf(输入错误!);exit(1);fclose(fp);menu();/*调用 menu 函数*/函数功能及实现:先定义学生结构体变量 s,打印相关可供选择的选项,通过 scanf 函数读取输入字符,打印表头,再使用 if 语句进行相关选择。如果数“1” ,则是按学分查询课程,符合第一个 if 语句,输入想要查询的学分,程序通过 for 循环从文件中读取课程信息,并通过 pri
26、ntf 函数输出满足要求的课程信息;如选择“2” ,符合第二个 if 语句,则按照课程性质查询,输入课程性质,程序通过 for 循环从文件中读取课程信息,并通过 printf 函数输出满足要求的课程信息;如输入“3” ,符合第二个 if 语句,则按照课程名称查询,输入要课程名称,程序通过 for 循环从文件中读取课程信息,并通过 printf 函数输. v出满足要求的课程信息;查询完成后通过 fclose 函数关闭文件,打印主菜单,返回主函数。3.2.5void xuan_ke();函数原型:void xuan_ke()函数源程序:/*进入选课操作*/void xuan_ke() struct
27、 student s;/*定义学生结构体变量 s*/struct course c;/*定义课程结构体变量 c*/FILE *fp;/*定义文件指针变量*/printf(n 请输入您的学号及您要选择的课程编号(用空格分开):);scanf(%d%d,&s.snum,&um);if(fp=fopen(course.txt,r)=NULL)/*打开选课记录文件course.txt*/printf(nCannot open course!n);for(;!feof(fp);)fscanf(fp,%d %s %s %d %d %d %d %dn,&c.num,&c.na
28、me,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mar. vk,&c.term);if(um=c.num)break;fclose(fp);/*关闭选课记录文件course.txt*/if(fp=fopen(student.txt,a+)=NULL)printf(nCannot open student!n); /*将学生选课信息输入 student.txt 文件*/fprintf(fp,%d %d %sn,s.snum,um,);fclose(fp);printf(n 恭喜您选课成功!n);me
29、nu();函数功能及实现:进入此函数可进行自由选课,首先定义了学生结构体变量s,和课程结构体变量 c。选课学生输入自己的学号和要选的课程,通过 for 循环打开文件并找到所要选择的课程,通过 break 跳出循环,关闭课程文件“course.txt”并将学生选课信息存入文件“student.txt”中,关闭文件。打印菜单信息,返回主函数。3.2.6void xuanke_information();函数原型:void information();函数源程序:. v/*选课情况统计*/void xuanke_information()int total=0;/*人数统计变量*/FILE *fp;
30、struct student s;if(fp=fopen(student.txt,r)=NULL)/*打开选课记录文件student.txt*/printf(nCannot open student!n);printf(n 学号课程编号课程名称n);for(;!feof(fp);)fscanf(fp,%d%d%sn,&s.snum,&um,&ame);total+;printf(%22d%17d%18sn,s.snum,um,ame);printf(n 选课学生总人数为:%d 人,total);fclose(fp);menu();. v函数功能及实现:此函数为查看选修课
31、被选择的情况。定义了变量 total为了统计选课人数,通过 if 语句判断是否存在文件“student.txt” ,通过 for 循环打印出所有已选课学生的学号、选课课程编号和所选课程的名称,通过计数变量 total 输出已选课的人数信息。然后打印菜单,返回主函数。3.2.7void input()函数原型:void input();函数源程序:/*录入选修课课程信息*/void input()FILE *fp;struct course c;int count;int i;if(fp=fopen(course.txt,a+)=NULL)/*建立文件course.txt*/printf(can
32、not open filen);printf(n (录入选课信息)请输入课程门数: );scanf(%d,&count);. vprintf(n (各项目间用空格分开)nn);f1();for(i=0;i5|n0&n5|n0;)printf(n 输入错误!请重新输入! );scanf(%d,&n);system(cls);/*调用系统命令 cls,清除屏幕*/ if(n=0) exit(0);/*退出选课系统*/函数功能及实现:函数先打印出主菜单,用户可通过输入项目编号进行后续操作,输入数字为 05 之间的任意数字,代表进入不同的模块,通过 for 循环可有效避免错误选
33、择。如果输入 15 通过 while 循环和 switch 调用相关函数,实现相关功能,调用完后,通过 break 跳出循环,并选择后续操作。为了界面的更加简洁,调用 DOS 命令,清屏。如果输入 0 则执行 exit(0)退出程序。4 设计和调试分析4.1 调试中遇到的问题(1)在用 scanf 函数给普通变量输入数据时,在变量名前漏写地址运算符&。如:scanf(dd, x, y); . v(2)在 scanf 函数调用语句中,企图规定输入实型数据的小数位。如执行以下语句:scanf(6.2f, &a);(3)输入数据时的数据形式与要求不符。用 scanf 函数输入数据时,
34、必须注意要与 scanf 语句中的对应形式匹配。如:scanf(d,d,&x, &y);若按以下形式输入数据: 2 4是不合法。数据 2 和 4 之间应当有逗号。(4)输入、输出时的数据类型与所用格式说明符不匹配。例如有以下说明语句: int x=1; char y=a;则运行时执行语句 printf(x=c, y=dn, x, y);将给出与原意不符的结果:(在 TURBO C 2.0 下运行)(5)混淆=和=。在 C 语言中,=赋值运算符,=是关系运算符。(6)在不该出现分号的地方加了分号。例如:if(xy); printf(x is larger than y. n);(
35、7)对于复合语句,忘记加花括号。例如: i=1; a=0;while (i=10). va+=i; i+;printf(a=dn,a);(8)误把数组说明时所定义的元素个数作为最大下标值使用。C 语言规定,引用数组元素时下标从 0 开始,即下标值的下限为 0,而下标的上限值是数组定义时元素个数减 1。(9)在 switch 语句的各分支中未使用 break 语句。例如:switch(n) case 1:browser(); case 2:search(); case 3:xuan_ke(); case 4:xuanke_information(); case 5:input(); 4.2 算法
36、的时间复杂度分析时间复杂度分析设有 n 们选修课则算法的时间复杂度依次为:browser()的时间复杂度为:T1=O(n);search()的时间复杂度为:T2=O(3*(2+n))xuan_ke()的时间复杂度为:T3=O(2+2*n)xuanke_information()的时间复杂度为 T4=O(1+2*n)input()的时间复杂度为:T5=O(1+2*n). v所以时间复杂度为 T=O(n)4.3 经验和体会(1)通过这次的课程设计,使我了解了一个简单的学生选课系统的设计过程,并且基本掌握了 Microsoft Visual C+的基本用法,掌握C 语言程序设计课程的基本知识及其应用
37、情况,加深对该课程的理解,在这次设计过程中使我对编程和程序的开发建立了浓厚的兴趣。(2)在设计过程中遇到了很多的问题,但是最后通过自己的努力或者在网上寻找最后都得到了解决,虽然这次的设计是一个很小的程序但是设计这样的程序真的不简单呀,虽然这次的设计时间很短,并且程序也不是很大,但是还是遇到了许多问题,但是我相信在以后的学习中我会更加的努力,并且努力的改正现在的程序,使之程序的功能更加的完善。(3)通过此次编程培养了我们结构化程序设计的思想,加深了对高级语言基本语言要素和控制结构的理解,锻炼我们独立思考制作程序的能力,并且掌握了一些课程设计的相关知识与实践操作能力,为以后的学习提供了锻炼的机会。
38、经过设计和开发,我对于数据的一致性的问题也通过程序进行了有效的解决。从而是我对 c 语言这门课程有了更好的了解。5 用户使用说明(1)根据正确的提示安装软件。(2)Intel486 以上系列、AMD K6 以上系列等 PC 台式机和便携式电脑都可运行。 (3) 打开该程序系统,浏览菜单,根据需要选择功能,进行各项操作。操作如下:. v点击开始菜单,进入菜单选择。输入:将所需的信息输入。输出:学生信息、课程查询输入:根据不同的需要选择,当信息输入显示出错误时,进入浏览信息,找出错误。当错误不能改正,则退出浏览信息。进入查询信息:则屏幕会出现三个对话框按学分,课程性质和课程名称查找,查处相应的所选
39、课程信息(是否选满) 。当查询不能显示需要时进入修改程序,把所输入的信息进行修改,使之正确能够正常运行或进入删除信息中,重新输入自己所要的信息。当信息输入正确,进入你所需要的菜单程序中:课程信息:显示课程编号、课程名称、课程性质、授课学时、实验或上机学时、总学时、学分开课学期。学生信息:显示出学生的学号。6 测试数据和测试结果(1)进入系统界面(2)录入选修课课程信息:根据提示输入课程信息,先输入课程门数,再输入相关课程信息,每个输入项用空格隔开,如图输入 5 门课程后的结果:(3)浏览课程信息:在输入课程信息后方可进行课程信息浏览,如图是输入“1”进行课程信息浏览后得到的结果:(4)按“2”
40、进行课程信息查询. v(1)按学分查询首先输入“1”按学分查询,再根据提示输入要查询的学分,如图为所有为 1学分课程的相关信息:(2)按课程性质查询选择“2”为按课程性质查询,输入“自然科学”并按“Enter” ,得到所有性质为“自然科学”的课程,如图为得到的结果:(3)按课程名称查询输入“3”进行按课程名称查询,输入“大学语文”按“Enter”得到如图的结果:(5)按“3”进入选课系统进行选课选课时输入学号和所要选择的课程编号,并用空格隔开,如图是学号为“201153101”的学生选择编号为“1” (即大学语文课程)得到的结果:(5)统计选课情况输入“4”可以统计选课情况,如图是统计结果:6
41、、按“0”退出选课系统参考文献1 美H M Deitel,P J Deitel 著,薛万鹏等译. C 语言程序设计教程.:机械工业,2000.072 谭浩强. C 程序设计(第二版).:清华大学,1999.123 美Kenneth A.Reek 著,徐波译.C 和指针.;人民邮电 2008.4附录源程序清单*include /*标准输入输出函数库*/. v*include/*标准函数库*/*include /*字符串函数库*/ /*定义与课程有关的结构体*/struct course int num; /*课程编号*/char name20; /*课程名称*/ char kind10; /*课
42、程性质*/int taltime,ttime,etime,mark,term; /*课程时间,学分,开课信息等*/;/*定义与学生有关的结构体*/struct studentint snum;/*学生学号*/intum;/*所选课程编号*/charame20;/*所选课程名称*/;/*函数原型*/void f1();void menu();void browser();void search();. vvoid xuan_ke();void xuanke_information();void input();/*常用函数 1*/void f1()printf(n 课程编号课程名称课程性质授课学
43、时实验或上机学时总学时学分开课学期:n);/*主菜单*/void menu() printf(nnn);printf( 欢迎使用学生选课系统! n);printf( * n); printf( * 1-浏览选课信息 2-查询选课信息 * n);printf( * 3-进入选课操作 4-选课情况统计 * n);printf( * 5-录入选课信息 0-退出选课系统 * n); printf( * n);printf( 请选择输入选项编号(请先选择 5 进行课程信息. v录入): );/*主函数*/void main()int n;menu();scanf(%d,&n);/*防止错误,提示
44、重新输入*/for(;n5|n0&n5|n0;)printf(n 输入错误!请重新输入! );scanf(%d,&n);system(cls);/*调用系统命令 cls,清除屏幕*/ if(n=0) exit(0);/*退出选课系统*/*浏览选课信息*/void browser()FILE *fp;/*定义指向文件的指针*/struct course c;/*定义课程结构体变量 c*/if(fp=fopen(course.txt,r)=NULL)printf(nCannot open course!n);. vf1();for(;!feof(fp);) /*直到文件结束*/fs
45、canf(fp,%d %s %s %d %d %d %d %dn,&c.num,&,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term); /*将课程信息写入文件*/printf(%5d%12s%9s%9d%12d%12d%8d%9dn,c.num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);/*格式化输出*/fclose(fp);/*关闭文件*/ menu();/*查询选课信息*/void sear
46、ch()FILE *fp; /*定义文件指针变量*/struct course c;/*定义学生结构体变量 c*/int score;char kind10;char name20;int b;/*输入需要的查询课程信息的方式*/. vprintf(n 1.按学分查询nn);printf(n 2.按课程性质查询nn);printf(n 3.按课程名称查询nn);printf( 请选择查询方式,输入选项数字:);scanf(%d,&b);for(;b3;)printf( 输入错误,请重新输入!);scanf(%d,&b);/*按学分查询*/if(b=1) printf(n 请输入
47、您要查询的学分: );scanf(%d,&score);if(fp=fopen(course.txt,r)=NULL)printf(nCannot open course!n);f1();for(;!feof(fp);)fscanf(fp,%d%s%s%d%d%d%d%dn,&c.num,&,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);if(c.mark=score). vprintf(%5d%12s%9s%9d%12d%13d%8d%9dn,c.
48、num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);/*按课程性质查询*/else if(b=2)printf(n 请输入您要查询的课程性质: );scanf(%s,&kind);if(fp=fopen(course.txt,r)=NULL)printf(nCannot open course!n);f1();for(;!feof(fp);) fscanf(fp,%d%s%s%d%d%d%d%dn,&c.num,&,&c.kind,&c.ttime,&c.etime,&
49、amp;c.taltime,&c.mark,&c.term);if(strcmp(c.kind,kind)=0)printf(%5d%12s%9s%9d%12d%13d%8d%9dn,c.num,,c.kind,c.ttime,c.etime,c.taltime,c.mark,c.term);. v/*按课程名称查询*/else if(b=3)printf(n 请输入课程名称:);scanf(%s,&name);if(fp=fopen(course.txt,r)=NULL) printf(nCannot open course!n);f1();for(;!feof(fp);) fscanf(fp,%d%s%s%d%d%d%d%dn,&c.num,&,&c.kind,&c.ttime,&c.etime,&c.taltime,&c.mark,&c.term);if(strcmp(c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年深圳汽车租赁合同3篇
- 2024年股权出质担保借款协议
- 智能媒体传播课程设计
- 2024年度车牌租赁租赁期满处理及续租协议3篇
- 2024年电子产品物流运输标准3篇
- 英语环保主题课程设计
- 2025年度航空电子PCB板全球采购合同3篇
- 2024年软件许可使用合同范本
- 英语歌校本课程设计
- 2024年自然资源开发利用协议3篇
- 储能系统技术服务合同
- GB/T 1094.7-2024电力变压器第7部分:油浸式电力变压器负载导则
- 电大西方行政学说
- 2024-2025学年人教版数学七年级上册期末复习卷(含答案)
- 2024年度中国PE、VC基金行业CFO白皮书
- 2023年南京市江宁区招聘教师考试真题
- 2025版国家开放大学法律事务专科《法律咨询与调解》期末纸质考试单项选择题题库
- 2024小学数学义务教育新课程标准(2022版)必考题库附含答案
- DB32/T 2283-2024 公路工程水泥搅拌桩成桩质量检测规程
- 石油石化用化学剂产品质量认可实施细则
- 快递证明模板
评论
0/150
提交评论