C语言课程设计学生选课系统实习报告.doc
《C语言课程设计学生选课系统实习报告.doc》由会员分享,可在线阅读,更多相关《C语言课程设计学生选课系统实习报告.doc(42页珍藏版)》请在咨信网上搜索。
1、C语言上机实习报告院 系: 班 级: 姓 名: 指 导 老 师: 2010-8-28至2010-9-4目录一、设计目的1二、设计要求2三、题目及其要求2四、需求分析2五、总体设计3六、详细设计36.1、主函数36.2、菜单函数46.3各模块设计76.3.1输入函数76.3.2添加函数96.3.3修改函数126.3.4查找函数166.3.5选择课程206.3.6删除课程236.3.7浏览函数266.3.8退出操作276.3.9公共函数保存函数28七、上机实习.28八、设计实习心得.29九、参考书目.29十、学生选课系统与程序.30一、 设计目的随着信息技术对人类社会进行的全方位渗透,一种新的文化
2、形态信息时代的计算机文化已经形成。计算机知识成为当代知识分子结构中不可缺少的重要部分。C语言是近年来国内外得到迅速推广使用的一种高级语言。C语言功能丰富,表达能力强,使用灵活方便,应用广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的语言特点,因此C语言对我们来说很重要。学习的目的在于将所学到的东西运用于实践,这样方可在实践中巩固以前所学的理论知识,同时提高自己学习的能力,完善自己掌握的技能,使得我们既能够从实践中强化以前所学的知识,也能让我们在实践中学到更多新的东西,还能锻炼我们的动手能力,这是书本上不能学到的。此次设计就在于让我们把以往所学运用于实践中,让我们通过对实际
3、生活中的实例进行观察和理论分析后,总结出一套可行的解决方案,然后用编程的方法,把解决方案变为可能。此次设计,也让我们巩固和加深了对C语言课程的基本知识的理解和掌握,帮助我们掌握C语言编程和程序调试的基本技能,让我们体验了如何用C语言进行基本的软件设计,同时也提高了我们书写程序说明的能力和用C语言解决实际问题的能力。二、设计要求1.认真分析实习指导老师分配的课程设计题目的要求;2.写出详细设计说明,分块论述;3.编写程序代码,调试程序使其能正确运行,并且可以实现预期的功能;4.设计完成的软件要便于操作和使用,有整齐、美观的使用界面;5.设计完成后提交课程设计报告和源代码文件的电子文档。三、题目及
4、其要求假定有n门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于15)自由选课。试设计一个选修课程系统,使之能提供以下功能: (1)系统以菜单方式工作 (2)课程信息和学生选课信息录入功能(课程信息用文件保存) (3)课程信息浏览功能 (4)查询功能 (5)按学分查询(6)某门课程学生选修情况(可选项) 四、需求分析 根据题目要求,由于课程和学生所选课程的信息是存放在文件中的,所以要提供文件的输入输出等操作;在程序过程中还要进行添加课程、浏览课程、查找课程、选择课程、删除课程以及退出系统等操作,所以应提供相应的输
5、入、现实、查找、选择、删除和退出等功能的函数来实现;另外还要在最开始设置菜单函数,实现其它功能的选择。五、总体设计根据以上的题目要求以及需求分析,我认为可将我要设计的程序分为十一个模块:主函数、菜单函数、输入课程、添加课程、修改课程、查找课程、选择课程、删除课程、浏览课程、退出系统、保存文件。(系统功能模块如图5-1所示)主函数输入函数添加函数修改函数查找函数选择函数删除函数浏览函数菜单函数保存函数保存函数保存函数保存函数退出函数保存函数六、详细设计6.1、主函数 主函数一般设计简洁,本次设计遵循程序清晰可读,功能完善的原则,尽量合理简化程序。在主函数中,仅提供了标准输出函数的调用和菜单函数的
6、调用。 主函数流程图如下图所示: 调用主函数输出“正在启动系统”调用菜单函数其代码如下所示: /* 主函数 */ void main() int b=1;system(color 6f); printf(nnnnnnnnnnt tt正在启动系统 tn ); for(i=0;i100000000;i+); system(color 2f);menu();6.2、菜单函数根据所要实现的功能,我编译了一个菜单函数,将所有选择功能集中,提供给用户进行选择。这样做既可以使程序更加紧然有序,也为用户提供了方便快捷的选择,使得整个设计更加人性化。菜单函数的流程图如下图所示:菜单函数输入课程添加课程修改课程查
7、找课程选择课程删除课程浏览课程 退出系统菜单函数的代码如下所示:void menu() char k100=nnnttttt052081班 王兵武nnnnnnn; char *m=k; do system(cls); puts(ntt *管理员菜单*); puts(ntttt1.输入课程.); puts(ntttt2.添加课程.); puts(ntttt3.修改课程.); puts(ntttt4.查找课程.); puts(ntttt5.选择课程.); puts(ntttt6.删除课程.); puts(ntttt7.浏览课程.); puts(ntttt8.退出系统.n); puts(tt*n);
8、 printf(ntt请输入您的选择(1-8):t); scanf(%d,&a); printf(ntt-nn);switch(a) case 1: input(); break; case 2: add(); break; case 3: amend(); break; case 4: search(); break; case 5: select(); break; case 6: cross_off(); break; case 7: output(); break; case 8: system(cls); for(i=0;i10000000;i+); system(color 8f)
9、;puts(nnnnttt谢谢使用。已退出系统。); for(m=k;mk+1;m+)printf(%s,m);exit(0);break; default:puts(输入错误!);break; printf( 按任意键返回首层n); getch();while(a!=8);运行主函数和菜单函数效果如下:显示进入系统 进入主菜单: 6.3各模块设计通过主函数调用菜单函数,通过菜单函数里的开关语句选择调用各功能函数。下面详述各功能函数。6.3.1输入函数通过菜单函数调用此函数用于输入已有课程信息,并通过输入函数调用保存函数将课程信息保存在“课程.txt”文件中。其流程图如下所示:调用输入函数输入
10、课程编号判断课程是否存在加入课程已经存在,按任意键返回主菜单。课程原来不存在,继续输入课程其他信息,调用保存函数将其保存后,继续选择。若选择返回,则调用 菜单函数返回主菜单。选择继续,则返回输入函数重复上述操作。其代码如下:/* 输入函数 */void input()int i,flag=0,num=0;char q;do flag = 0; printf(请输入课程编号: ); scanf(%d,&num); for(i=0;icount;i+) if(num=KCi.num) flag = 1;break; if(flag) printf(此课程已存在!按任意键返回主菜单。n); prin
11、tf(n); printf(请输入:); q=getch(); menu(); else KCcount.num=num; printf(请输入课程名称: ); scanf(%s,KCcount.name);printf(请输入课程性质: ); scanf(%s,KCcount.xingzhi); printf(请输入课程学时: ); scanf(%d,&KCcount.xueshi); printf(输入实验上机学时: );scanf(%d,&KCcount.shiyan_shangji); printf(请输入课程学分: ); scanf(%f,&KCcount.xuefen); prin
12、tf(请输入开课学期: ); scanf(%d,&KCcount.xueqi); count+; baocun(); printf(输入成功!n); while(flag=1);输入函数运行效果如下图:(1)输入新课程,显示继续添加:(2)重复输入则运行如下:6.3.2添加函数通过菜单函数调用添加课程函数,进行新课程的添加。输入课程编号,判断其是否已经存在,已存在则选择重新输入或者返回主菜单,不存在则继续添加该课程的其他信息,并调用保存函数将其信息保存在“课程.txt”文件中。其流程图如下所示:调用添加函数输入课程编号判断课程是否存在所加课程已经存在,选择继续添加或返回主菜单。若不存在,继续添
13、加信息,调用保存函数将其保存后,继续选择。若选择返回,则调用菜单函返回主菜单。选择继续,则返回添加函数重复上述操作。继续添加,则继续调用添加函数选择返回主菜单,则调用菜单函数。程序代码如下:/* 添加函数 */void add() int i,j,flag=0,num=0;char q;do flag = 0; printf(请输入课程编号:); scanf(%d,&num); for(i=0;i重新输入;其它键-返回主菜单n); printf(n); printf(请输入:n); printf(n); q=getch(); if(q=1) add(); else menu(); else j
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 学生 选课 系统 实习 报告
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。