ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:19.83KB ,
资源ID:19968364      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19968364.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计学生选课系统Word格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计学生选课系统Word格式.docx

1、第三部分:程序功能划分、图示及流程图【功能模块划分及其流程图】本程序功能模块根据程序设计的需求,综合程序的实用性、人性化、智能化的考虑,将程序划分为6个部分分别编写,程序主体功能将由这9个部分来完成。这9个部分依次是:1.登录界面函数;void login()2.学生登录界面据函数:void stu_login()3.管理员登录界面函数:void man_login()4.退出界面函数:void bye_sys()5.课程选择函数:void c_select()6.课程浏览函数:void c_view()7.课程查询函数:void c_search()8.课程增加函数:void c_add()

2、9.课程删除函数:void c_delete()10. 菜单函数:void index()11.主函数部分; main()总体设计:系统功能模块图部分函数流程图:1、课程选择函数:2、课程查询函数3、课程增加函数4、课程删除函数第四部分:程序设计数据、运行结果本程序是一款应用软件,故数据设计、程序运行结果应在程序的运用中得以体现,现在通过一个程序的运用事例来对程序运行结果进行演示与实现。【软件运用举例】1、程序开始界面如下:选择某个选项,如进行管理员登录,进行课程的增加进入管理员界面:2、再选择所要进行的操作,如进行课程增加,结果如下:下面可以进行继续增加课程或者退出:3、选择课程浏览,可以分

3、页查看相应的课程信息:第一页:第二页:4、课程查询查找结果:4、管理员课程删除操作:删除后可以进行浏览,观察删除后的结果:可见删除后只有一条记录。删除操作完成正确。下面进行学生操作的使用方法:1、学生登陆界面:2、选择学生选课选项:3、学生登陆也可进行课程浏览和查询函数,其结果与管理员登陆相同,不再演示。第五部分:程序的优缺点【程序的优点】算法是程序的灵魂,程序的优点首先表现在算法上的优点,其次才是功能上的。算法上的优点主要体现在以下三点:1.程序采用main主函数方式设计,程序的主体的功能大都由该功能完成。程序如此设计有利于程序的进一步改进及有助于程序执行效率的提高。2.程序对文件数据的读写

4、采用了fread和fwrite块读写函数,能够将文件中的数据完全读出,然后赋到定义的数组中,再在相应的数组中进行一系列操作,最终再写入文件。3.插入操作在本程序中将课程信息直接插入数组最后一个节点,从而减少了数据的相互移动,节省了时间。功能上的优点主要体现在以下两点:1简洁明了的程序菜单。程序主要采用了层次不同的菜单,相互独立又相互联系,巧妙相接,符合用户的使用习惯与思维。2人性化的程序提示语言,程序提示语言较人性化,不仅大多为祈使语句、疑问句,而且提示明确,具有较强的明确的指导作用。程序提示不仅层次分明,提示方式多样,而且提示信息井然有序,更加有利于用户顺利、准确地看懂程序并进行操作。【程序

5、的缺点】主要表现在以下两点:1、本程序没有进行相应的密码操作,所以对于使用者来说可能存在比较大的不保密性。需要改善。2、本程序没有使用文本读写函数fscanf和fprintf,所以的到的课程文件和选课文件都是二进制形式。第六部分:心得体会选课系统程序比起通讯录程序来讲好写一些,由于本程序用到了数组,对于数组的操作掌握的比较熟练,所以在编写程序的时候困难没有那么多。本程序在编写的过程中用到了许多通讯录中的模块化设计和函数互相调用的思想,使得编写比较方便和好用。通过该系统的课程设计分析,我掌握了模块化设计的方法,理解和运用了结构化程序设计的思想和方法,掌握和提高了运用C语言进行程序设计的能力。程序

6、设计的过程,实际上是确定解决问题的详细步骤,而这个步骤通常叫做流程,在程序设计过程中理清楚整个问题的流程很重要,然后采取逐步细化的方法实现整个程序。对于一个较大的应用程序,一般不可能一次就设计出一个很完善的系统。通常要先设计满足基本要求的系统,然后再测试或者在使用的过程中不断完善,慢慢地做成一个功能很完善选修课程管理系统。所以在进行调试的时候需要对许多变量理解和掌握其变化规律等,这对于我更好的掌握visual C中调试的工具有很大的帮助。总之经过这次课程设计,我对c语言的使用和理解都有了很大的加深,对于编程的思想也有了很多新的理解和感受。第七部分:附录一、参考文献:1、李丽娟主编 ,C语言程序

7、设计教程(第二版),人民邮电出版社2、严蔚敏主编,数据结构(C语言),清华大学出版社3、崔单主编,C语言程序设计案例精粹,电子工业出版社4、谭浩强主编,程序设计(第三版),清华大学出版社二、源程序#includevoid index();生登录n); printf(t2.管理员登陆nt3.退出本系统nt请选择服务类别: scanf(%d,&input); if (input!=1&input!=2&=3) 增课程nt2.删除课程nt3.课程浏览nt4.课程查询nt5.退出nnnt请选择服务种类:in); if(in!in!=3&=4&=5) nt没有这项服务t按任意重新选择 getchar()

8、;getchar(); while(in!=5); switch(in) case 1:c_add();break; case 2:c_delete(); case 3:c_viewm(); case 4:c_searchm(); case 5:login();void stu_login()生选课nt2.课程浏览nt3.课程查询nt4.退出n if(input!=4)nt没有这项服务nt按任意键重新选择 while(input!=4); switch(input)c_select();c_views();c_searchs(); int n,in,i=0,j;int flag=0; FILE

9、 *fp; FILE *fp1; char input; struct course courses10; if(fp=fopen(,rb)=NULL) _num=n) flag+; if(flag=0) nntt不存在对应课程n printf(nntt继续选课请按1,退出请按2:n scanf( switch(in) case 1:stu_login(); default: printf(输入错误,将返回登录界面! login(); else fwrite(&coursesj,sizeof(struct course),1,fp1); fclose(fp1);nntt选课成功t请选择:nnt

10、t1.继续选课nntt2.退出,返回登录界面! void c_viewm()_num); printf(nnt课程名字: %sn,courseviewn.c_name);nnt课程学分: %dn,courseviewn.c_score);nnt课程已选人数:,courseviewn.c_nelepeo);nnt课程人数上限:,courseviewn.c_melepeo);nnt1.上一页t2.下一页t3.回目录n请选择: scanf (inp); switch(inp) if(n=0)nt已到达首页 t按任意键返回 input=getchar(); n=n-1; break; if(n=i-2

11、)nt已到达尾页t按人意见返回 n=n+1;man_login();nt操作错误t按任意键返回 while(inp!=3);void c_views()_num); scanf (stu_login();void c_searchs() void stu_login(); void c_searchs(); int id,i=0,j,inp,k; int flag=0; struct course coursesear10; if (fp=fopen()=NULL) _num) flag+; k=j; if(flag=1) system(clsnnt课程编号:%dn,courseseark.c

12、_num);nnt课程名字:%sn,courseseark.c_name);nnt课程学分:,courseseark.c_score);nnt课程已选人数:,courseseark.c_nelepeo);nnt课程人数上限:,courseseark.c_melepeo); getchar();nnt1.回目录继续查询t2.退出查询系统n请选择:nt没有这项服务t请按任意键重新输入 else nnt不存在对应记录n =1);void c_searchm() void c_searchm();man_login();void c_add()程编号:;nntt2.课程名字:%s,;nntt3.课程学

13、分:nntt4.课程已选人数:nntt5.课程人数上限:)!=NULL) do fread(&coursesi,sizeof(struct course),1,fp); i=i+1; while(!feof(fp); fclose(fp); for(j=0;j=i-1;j+) if=coursesj.c_num)nnttt对不起,这个编号已经使用过nntt按任意键返回管理菜单 man_login();)=NULL) fp=fopen(wbabcourse_new,sizeof(struct course),1,fp);nntt信息输入完毕t按任意键继续nntt1.继续输入nntt2.返回管理菜单nntt请选择 if(inp!inp!=2)输入不符合要求t按任意键重新选择=2);void c_delete()_num=n) flag=1; for(k=0;kj;k+)coursesk,sizeof(struct course),1,fp); for(k=j+1;i-1; fwrite(&nntt记录已删除!t按任意键返回ntt getchar(); man_login();nntt不存在对应的课程t按任意键返回 / printf(int main() index(); login(); return 0;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1