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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

c语言课程方案设计书学生信息管理系统.docx

1、c语言课程方案设计书学生信息管理系统封面作者:PanHongliang仅供个人学习课程设计报告 课程名称:高级语言程序设计课程设计 姓 名:汤璞君班级学号: BX1209 121003410937指导教师: 吉顺如 完成日期: 2013.6.15 学生信息管理系统1 课程设计目的与要求1.1课程设计目的本课程设计是在学习C+基本理论之后的实践教案环节。该实践教案是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。学生通过课程设计在下述各方面得到锻炼:1能根据实际问题的具体情况,结合C+的基本理论和

2、基本技巧,正确分析问题,并能设计出解决问题的有效算法与程序。2提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法和程序的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改,进一步提高程序设计水平。1.2课程设计要求通过一个学期的学习,我认为要学好C语言程序这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才能增强和巩固我的知识。特别是作为本科生,更要注重实践这一环节,只有这样我们才能成为合格的计算机人材。通过这次课程设计,进一步巩固所学的语句,如语句嵌套等;加深对循环,分支等结构的运用。具体如下:(1)数据组织方面尽量使用到:数组、链表、结构体、文件;(2)程

3、序结构方面做到函数调用,尽量采用指针运算;(3)代码编写规范,形成良好的编程习惯;(4)程序须有一定的健壮性和必要的提示信息,考虑问题的多种可能和边界数据。(5)课设完成须进行答辩,提交课设报告电子稿、装订的打印稿。课设报告内容包括以下几个方面: 程序的总体设计和算法分析。 程序流程图、函数说明 源程序代码清单 测试数据和测试过程记录 遇到的问题及解决方法分析 课程设计小结1.3课程设计的评价通过此次课程设计,我的知识面得到了扩展,发现课本上的东西是远远不够的,需要上网找资料寻找补充,而且小组合作的形式可以互相交流知识,弥补自己的不足。通过课程设计,加深对结构化程序设计思想的理解,能进行一个系

4、统功能需求分析,并设计合理的模块化结构。提高程序开发能力。2 问题描述设计一个学生信息管理系统,其中包括:学生基本信息:如学号、姓名、性别、年龄、地址、电话等。功能包括:1. 系统菜单形式显示2.学生信息录入功能输出3.学生信息浏览功能输出4.查询、排序功能算法 按学号查询 按姓名查询5.学生信息的删除与修改3总体设计3.1 功能分析3.1.1菜单模块通过while语句给出信息提示;清屏;绘制菜单(包含输入,浏览,查询,修改,删除,排序,保存,退出);提示菜单选择并读入到变量;根据读入变量的值调用不同的模块函数;3.1.2信息录入模块打开文件While() 清屏; 按照提示输入各种信息;Whi

5、le 显示各种信息;通过选择1.确认并继续 2.重新填写 3.放弃并返回 4.确认并返回 选择四种功能;3.1.3信息浏览模块打开文件While() 清屏; 用for语句依次按照顺序输出学生信息 通过选择可以翻页 1.上一页 2.下一页 0.退出3.1.4信息查询While() 通过菜单式的选择 是学号查询 还是姓名 printf(*学生信息管理系统*)。 printf(n-检 索-)。 printf(n您想要:)。 printf(n 1.按学号检索)。 printf(n 2.按姓名检索)。 printf(n 3.返回主菜单)。printf(n*n)。如果选择学号进入学号模块通过输入学号 If

6、( 学号存在继续) 输出学生信息Else 输出无此学生如果选择姓名进入姓名模块If(根据比较姓名判断学生是否存在) 输出学生信息Else 输出无此学生3.1.5删除模块while( 继续删除 ) 提示并读入待删除的学生的学生号;显示要删除的信息删除成功3.1.6信息修改模块输入要修改学生信息的学号:If (判断是否有此学生) 菜单形式显示要修改的工程printf(n1.姓名 2.年龄 3.性别 4.出生年月 5.地址 6.电话 7.E-mail n)。 printf(n8.数学 9.英语 n)。Swich() 选择要修改的工程进行修改3.1.7打开文件模块void fileopen() FIL

7、E *fp。 int n。 if(fp=fopen(data,r+)=NULL)fp=fopen(data,w+)。 for(n=0。n100。n+)fread(&stun,sizeof(struct student),1,fp)。 fread(&stunum,4,1,fp)。 fclose(fp)。3.1.8保存文件模块void filesave() int n。 FILE *fp。 fp=fopen(data,r+)。 for(n=0。n100。n+) fwrite(&stun,sizeof(struct student),1,fp)。 fwrite(&stunum,4,1,fp)。 fc

8、lose(fp)。 printf(保存成功!press Enter to continue.)。 getch()。3.1.9退出模块case 8:ma=0。break。用的是跳出while语句 回到安全模块3.1.10排序模块通过 冒泡排序法 for(m=0。my-1。m+) for(x=m+1。xy。x+) if(stum.sumstux.sum) stu99=stum。 stum=stux。 stux=stu99。 stu99.id=stux.id 。 stux.id =stum.id。 stum.id =stu99.id 。 printf(排序后的顺序为:n)。然后显示排序好后的学生信息

9、;3.2系统主要函数多功能计算器采用结构化程序设计思想,程序中除主函数外,共设计了23个函数,函数原型 及功能说明如表3.2.1所示。表3.2.1 函数原型及功能说明序号函数原型功能说明1void calculate1()调用整数运算的相关函数2void zhengshu()整数的运算的头文件3void calculate2()调用实数运算的相关函数4void shishu()实数的运算的头文件5void calculate3()调用分数运算的相关函数6void fenshu()分数的运算的头文件7typedef struct fushu抽象数据类型定义8float real数据对象9floa

10、t image定义构造复数的函数10fushu ComplexNumberInput(float a,float b)构造复数二元组11fushu ComplexNumberAdd(fushu c1,fushu c2)复数的求和运算12fushu ComplexNumberSub(fushu c1,fushu c2)复数的求差运算13fushu ComplexNumberMul(fushu c1,fushu c2)复数的求积运算14fushu ComplexNumberDiv(fushu c1,fushu c2)复数的求商运算15void ComplexNumberOutput(fushu c

11、)输出复数的运算结果16void fushi()复数的运算的头文件17typedef struct Linknode定义链表节点的数据类型为Node18struct Linknode *next定义链表节点的数据类型为Node19Node * createlink()创建链表并读入多项式的指数和系数20void Sum(Node *pa, Node *pb) 两个一元多项式相加21void mus(Node *pa, Node *pb)两个一元多项式相减22void print(Node * p)输出程序中所有的项23void yiyuanduoxiangshi()一元多项式的运算的头文件4

12、详细设计主模块4.1 程序总体结构图主函数4.2 主函数流程图各部分模块4.3 信息的录入流程图4.4 学生信息浏览流程图4.5 按姓名或学号查询流程图4.6信息的删除流程图5 功能测试5.1系统主界面5.1系统主界面5.2录入学生信息功能5.2.1录入学生信息界面5.2.2录入学生信息界面5.2信息浏览功能5.2信息浏览界面5.3信息修改功能5.3.1信息修改界面5.4信息检索功能5.4.1信息检索界面5.4.2按学号检索界面5.4.4按姓名检索界面6 程序设计调试情况分析1.问题:c程序运行不出来,几个头文件中出现了相同的函数;解决方法:改变头文件中相同名字的函数名。2.问题:调用检索函数

13、一闪而过。解决方法:添加getchar()语句使程序暂停。3.问题:无法有效的控制输出函数循环终止。解决方法:添加全局变量“stunum”,使用该全局变量来记录学生总数,从而控制输出循环的次数4.问题:查询函数数据量过多时同时输出,先输出的内容无法查看,或需用户自行查看。解决方法:添加getchar()语句使程序暂停,当用户按Enter时继续。5.问题:调试时,有的时候编译后没什么问题,就是在点击连接link时出现了错误;解决方法: 将源程序保存,然后关掉Microsoft Visual C+ 6.0,重新启动Microsoft Visual C+ 6.0。7 课程设计小结通过此次课程设计,我基本上对制作一个相对来说比较完整的程序有了一定的认识和了解。这一周多来的制作,不但对C语言的知识有了一定的巩固,还增加了我们的动手能力。学生信息管理系统,涉及到结构体,链表,文件和循环的知识,所以尤其对这几个方面有所加深和巩固。其中又包括结构体的赋值,写到文件中。从文件中赋值给结构体。等等。还能够通过编译时出现的出错提示信息,进行初步的纠错。完成一个程序的一般步骤为设计,录入,编译,如果出错,则修改,然后再编译,编译成功后,看看结果是否正确,如果结果不正确,则再重复以上步骤。小组

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

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