《最新C语言程序设计基础课程设计报告.doc》由会员分享,可在线阅读,更多相关《最新C语言程序设计基础课程设计报告.doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateC语言程序设计基础课程设计报告程序设计基础课程设计报告程序设计基础课程设计报告课程名称:程序设计基础课程设计课程设计题目:学生信息管理系统姓 名:系:计算机科学技术系专 业:计算机网络技术年 级:学 号:指导教师:职 称:讲师2012年1月1日一、 设计题目及要求。1、题目:学生信息管理系统2、要求: 1)建立学生信息的结构体2)学生信息的初始化(可以从文件获取)3)
2、学生信息的添加、修改、查找4)学生信息的输出5)对学生信息按学号排序6)计算一门课的平均分和总分7)将学生信息保存为文件二、 设计算法设计分析。1、 主要功能模块:添加模块、查找模块、修改模块、排序模块添加模块:(1) 从键盘中输入添加学生的人数n.(2) 从键盘中输入学生的学号和各科成绩,分别存入一维数组sum和二维数组score中。(3) 计算各科的总分和平均分,分别存入一维数组sum和aver中。(4) 判断各个学生的三科成绩是否都大于90,如果是则输出“Y”,表示该生能获得奖学金,否则输出“N”表示该生不能获得奖学金。 添加模块结果图查找模块(1) 从键盘中输入要查找的学生的学号k.(
3、2) 编写程序使numi与k一一对比,直到numi=k,输出该生的学号及相应成绩。 查找模块结果图修改模块:(1) 从键盘中输入要修改的学生的学号x.(2) 编写程序使numi=x,输出该生的成绩,选择你要修改的科目并输入你修改后的新分数,重新计算该生的总分和平均分。(3) 重新判断该生的三门课成绩是否都大于90,如果是则输出“Y”,表示该生能获得奖学金,否则输出“N”表示该生不能获得奖学金。 修改模块的结果图三、 程序编码实现。源代码与执行结果2部分/*函数功能:添加一个或几个学生的成绩,查找某个学生的成绩,修改某个学生的成绩 函数参数:长整型数组num,存储每个学生的学号 整型数组scor
4、e,存储每个学生的成绩整型数组sum,存储每个学生的总分实型数组aver,存储每个学生的平均分字符型数组c,标志每个学生能否获得奖学金整型数n,存储学生总数函数返回值:无*/void Find(long num,int score3,int sum,float aver,char c,int n)long x,t,k;int i,j;printf(请选择您要实现的功能:1-添加,2-查找,3-修改n);scanf(%ld,&t);if(t=1)printf(请输入你要添加的人数:);scanf(%d,&A);printf(Enter No and Score as: MT EN PHn);fo
5、r(i=n;in+A;i+)scanf(%ld,&numi);for(j=0;j3;j+)scanf(%d,&scoreij);sumi=0;for(j=0;j=90)&(scorei1=90)&(scorei2=90)ci=Y;elseci=N;if(t=2)printf(请输入学号:);scanf(%ld,&k);for(i=0;i90n);printf(%4ldt,numi);for(j=0;j3;j+)printf(%4dt,scoreij);printf(%5dt%6.1ftt%cn,sumi,averi,ci);if(t=3)printf(请输入学号:);scanf(%ld,&x)
6、;for(i=0;in;i+)if(x=numi)printf(请输入你要修改的选项所对应的数字:0-MT,1-EN,2-PHn);scanf(%d,&j);printf(你将修改为:);scanf(%d,&scoreij);sumi=0;for(j=0;j=90)&(scorei1=90)&(scorei2=90)ci=Y;elseci=N;/*函数功能:按学号对学生排序 函数参数:长整型数组num,存储每个学生的学号 整型数组score,存储每个学生的成绩整型数组sum,存储每个学生的总分实型数组aver,存储每个学生的平均分字符型数组c,标志每个学生能否获得奖学金整型数n,存储学生总数函
7、数返回值:无*/void order(long num,int score3,int sum,float aver,char c,int n)int i,j,t,x;long k;float g;char h; for(i=0;ii;t-)if(numtnumi)k=numi;numi=numt;numt=k;x=sumi;sumi=sumt;sumt=x;g=averi;averi=avert;avert=g;h=ci;ci=ct;ct=h;for(j=0;j3;j+)x=scoreij;scoreij=scoretj;scoretj=x;执行结果(1):(2)四、 程序调试过程中出现的问题:开始运用添加功能时,虽然添加了,但在输出结果中不显示。 解决办法:将最后的输出中的in改为in+A五、 总结在课程设计的这段日子里,我真正体会到什么叫失败是成功之母,因为在编写程序时会出现这样或那样的错误,有的是语法错误,有的是逻辑错误,还有的是由于自己粗心漏掉或多加了一些符号等等,但只要你能静下心来慢慢寻找原因,慢慢修改,最后终能成功。但如果你在编程时格外细心,你将会减少许多麻烦,同时也会节省很多时间。-
限制150内