欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    C语言课程设计学生成绩管理系统2 .doc

    • 资源ID:2384873       资源大小:79.50KB        全文页数:22页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言课程设计学生成绩管理系统2 .doc

    C语言程序设计课程设计报告专 业: 电子信息工程 班 级: 0902 姓 名: 指导教师: 2010年 12 月 30日目录一、课程设计任务书3二、设计内容及思路4 三、函数说明及流程图15四、个人部分18五、实验心得20六、参考文献4七、程序代码4一、课程设计任务书一、设计题目:学生成绩管理系统二、设计目的 1、熟练掌握C语言课程中所学的理论知识; 2、通过综合C语言的基本知识来解决实际问题; 3、加强分析和解决问题的能力。二、设计内容 职工信息包括职工号、姓名、性别、年龄、学历、工资等(职工号不重复)。系统功能包括:1、系统以菜单方式工作,密码登陆。2、职工信息的录入(增加数据)。用数组数据类型赋初值的方法把职工信息送到各个数组中(但注意要是合法数据),然后把它们输出显示。3、职工信息的删除(删除数据)。任意输入一位职工的工号,将它所有的信息从组数中删除。4、职工信息的浏览(查找数据)。任意输入一位职工的工号,打印出他的所有数据。要求能多次查找。5、职工信息的修改(修改数据)。任意输入一位职工的工号,打印出所有相关信息后,可对某一项信息进行修改并保存。6、职工信息的计算并排序。计算所有职工的总工资及平均工资(aver,单精度,输出一位小数),将包括所有数据的数组元素按工资从高到低的顺序排序打印出来。四、设计步骤1、需求分析:对系统的应实现的功能进行分析。2、概要设计:对系统功能进行模块分解,对模块的功能及模块之间的相互关系进行说明(如用到函数,则对函数间的接口进行说明),对系统使用的数据结构(各数组、主要变量的设置及其代表的含义)进行说明。3、详细设计:用流程图、伪代码等方法对各主要算法进行描述。4、编写代码:根据设计编写。源程序要按照程序的格式规范来编写,要求结构清晰,界面友好,关键部分有必要的注释。5、调试分析:准备充分的测试数据对系统进行调试(对错误的数据输入也要进行测试,保证程序的容错性),并通过测试对系统提出改进设想。设计思路1、(需求分析或算法分析)学生的主要信息包括:学号、姓名、C语言成绩、数学成绩、英语成绩、总分、平均分、名次.2、(数据分析:包括所涉及的函数,数据结构等)用结构体数组来存储信息,例如用Add()函数来实现信息的录入,用Disp()函数来显示打印信息,用Qur()函数来查找信息,用Sort()函数来排序用Insert()函数来插入信息,用Modify() 函数来修改信息,用Del()函数来删除信息,用Save()函数来保存信息,用Exit函数来退出通讯录等等.3、对小组进行分工,每个人分配至少一个函数的代码实现,其余的再按情况进行分配.三、函数说明及流程图用到的函数库简介A.<stdio.h> 输入输出函数printf 形式:printf(char *format,args,)按format指向的格式字符串所规定的格式、将输出表列args的值输出到标准输出设备; scanf 形式:scanf(char *format,args,)从标准输入设备按gormat指向的格式字符串所规定的格式,输入数据给args所指向的单元; fopen 形式:fopen(char *filename,char *mode)以mode指定的方式打开名为filename的文件; fclose 形式:fclose(file *fp)关闭fp所指的文件,释放文件缓冲区。B.<string.h> 字符串函数 strcmp 形式:strcmp(char *s1,char *s2) 对s1 和 s2所指字符串进行比较,s1<s2返回负数;s1=s2返回;s1>s2返回正数。C.<stdlib.h> 动态分布函数和随机函数 malloc 形式:malloc(unsigned size)分配size字节的存储区。流程图:输出界面选择操作开始选择一选择二选择三选择四增加数据删除数据查找数据修改数据选择五计算数据性别年龄学历姓名职工号输入职工号输入职工号输入职工号输入工资排序保存结束工资四、个人部分任务内容:职工信息的修改(修改数据)。任意输入一位职工号,显示并打印出所有相关信息。代码:/信息查找函数/void czsj()int i,y;printf("tttn");printf("ttt *n");printf("ttt O(_)O n");printf("ttt *欢迎进入信息查找系统*n");printf("ttt *n"); printf("tttn");printf("nnn");R:printf("ttt请输入要查询的职工号:");scanf("%d",&y);printf("nn");printf("tt职工号 姓名 性别 年龄 学历 工资n");for(i=0;i<u;i+)if(y=str1i.num)printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi); printf("n");printf("nn");printf("tt是否继续进行操作,继续(Y),退出(n)n");getchar();a=getchar();if (a='y'|a='Y') goto R;else printf("n");printf("ttt按1键退出n");scanf("%d",&k);getchar();进行过程中遇到的问题:遇到的问题主要有两方面,一是自己的代码有错误,二是与小组其他成员的代码不兼容。解决方案:查询参考书籍,询问老师和同学。完成情况:经过修改、调试后,程序主要模块能正常运行。五、实验心得C语言是国内外广泛使用的程序设计语言,它功能强大,数据类型丰富,使用灵活,通用性强。学会、学好、使用C语言进行程序设计是时代的要求,也是计算机工作者的一项基本功。 在这次的试验中,我们共同协作,共同一步步的解决了课题选定、资料查找、流程图设计、各模块的算法设计、各模块和主程序的源程序编辑、最后的调试等步骤,完成了“成绩管理系统”这个程序的设计。在确定了大致上的方向后,我们也遇到了很多细节方面的问题,不过在我们的共同努力下,一个个问题都最终解决了.通过这次课程设计,使我充分认识到了自己一些方面的不足,同时经过课程设计时大家的不断讨论,使我对C语言有了更深入和更全面的认识. 通过本次课程设计,暴露了我很多学习上的误解.每门课都是要踏踏实实的学的,而不是到考前的恶补.可能成绩会比较好看.但一到实际就什么都不会了.脚踏实地是非常重要的学习态度,同时也是很重要的生活态度.本次实验对于我们来说,是非常重要的一段经历,因为我们明白了什么才叫程序,工作如何进行分工,如何进行分配,才能达到更高的效率,为我们以为做团体项目打好一个最基本的基础。六、参考文献1)谭浩强.C程序设计教程,清华大学出版社。2)沈大林.C语言程序设计案例教程,中国铁道出版社。3)张基温.C语言程序设计案例教程,清华大学出版社。4)郭翠英.C语言课程设计案例精编,中国利水电出版社。5) 申在明.C语言程序设计600例,人名邮电出版社。七、程序代码#include <stdio.h>#include <conio.h>#include <string.h>#include <stdlib.h>struct xinxiint num;char name8;char sex4;int age;char xueli6;int gongzi;struct xinxi str1100;int u,t,k;char a;/主函数void main()void dljm();void mima();void zjsj();void scsj();void czsj();void xgsj();void jspx();char i;dljm(); printf("nn"); M:system("cls");printf("nn");printf("ttn");printf("tt *n");printf("tt *欢迎进入职工信息管理系统功能界面*n");printf("tt *n");printf("ttn");printf("nnnn");printf("ttt*n");printf("ttt*A 职工信息添加系统*n");printf("ttt*n");printf("ttt*B 职工信息删除系统*n");printf("ttt*n");printf("ttt*C 职工信息查找系统*n");printf("ttt*n");printf("ttt*D 职工信息修改系统*n");printf("ttt*n");printf("ttt*E 职工信息求值系统*n");printf("ttt*n");printf("nnn");printf("tt请输入所需功能对应的字母:");i=getchar();switch (i)case 'a': system("cls");zjsj();goto M;break;case 'b': system("cls");scsj();goto M;break;case 'c': system("cls");czsj();goto M;break;case 'd': system("cls");xgsj();goto M;break;case 'e': system("cls");jspx();goto M;break;default:printf("请输入有效的字符n");void dljm(void) printf("t * * * * * * * * n"); printf("t n"); printf("t - - - - - - - - n"); printf("t n"); printf("t /-/ Happy /-/ n"); printf("t ( (oo) ) New Year! ( (oo) ) n");printf("t God n"); printf("t Bless n"); printf("t You! n"); printf("t - - - - - - n"); printf("t n");printf("t * n"); printf("t Welcom to the most beautiful n");printf(" 欢迎进入职工信息系统! n"); printf("t * n"); printf("t n"); printf("t /-/ n"); printf("t ( (oo) ) n"); printf("t n"); printf("t n"); printf("t n"); printf("t n"); printf("nn");system("color 25");mima();/密码函数/void mima()char a7,b="123456"int i,j;for (j=1;j<=3;j+)printf("tt请输入密码:");for (i=0;i<6;i+)ai=getch();if (ai=8) i=i-2;printf("b b");elseif(ai=13) break;printf("*"); ai='0'printf("n");if (strcmp(a,b)=0)printf("密码正确n");break;elseprintf("tt输入的密码错误!请再次输入密码:n");/信息输入函数/void zjsj()int j,k;printf("tttn");printf("ttt *n");printf("ttt *欢迎进入职工信息输入系统*n");printf("ttt *n");printf("tttn");printf("nnn");printf("tt请输入新的职工信息n");printf("n");L: printf("职工号");scanf("%d",&str1u.num);for (j=0;j<u;j+)if(str1u.num=str1j.num)printf("tt职工号重复,请重新输入:n");scanf("%d",&str1u.num);printf("姓名");scanf("%s",&str1u.name);printf("性别");scanf("%s",str1u.sex);printf("年龄");scanf("%d",&str1u.age);printf("学历");scanf("%s",&str1u.xueli);printf("工资");scanf("%d",&str1u.gongzi);u=u+1;printf("tt是否继续输入信息,继续(Y),退出(n)n");getchar();a=getchar();if (a='y'|a='Y') goto L;else printf("nn");printf("tt职工号 姓名 性别 年龄 学历 工资n");for (j=0;j<u;j+)printf("tt%dt",str1j.num);printf("%st",str1j.name);printf("%st",str1j.sex);printf("%dt",str1j.age);printf("%st",str1j.xueli);printf("%d",str1j.gongzi);printf("n");printf("n");printf("ttt按1键退出n");scanf("%d",&k);getchar(); /信息删除函数/void scsj() int z,i,y1,y2,k; printf("tttn"); printf("ttt * n"); printf("ttt You have acess to delete data!n");printf("ttt !_ 信息 删除 系统 _! n"); printf("ttt * n"); printf("tttn");printf("nn"); printf("t ¤ 东边日出 西边雨 n"); printf("t 道是无晴 却有晴 n"); printf("t - / - n"); printf("t 删除前 望加思量 n"); N: printf("nn"); printf("tt请输入要删除的职工号:"); scanf("%d",&y1); printf("n"); printf("tt请再次输入要删除的职工号:"); scanf("%d",&y2); printf("n"); if (y1=y2) for (i=0;i<u;i+) if (y1=str1i.num) z=i; break; printf("nnn"); printf("tt要删除的职工信息是:n"); printf("n"); printf("tt职工号 姓名 性别 年龄 学历 工资n");printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi); t+; printf("n"); for (i=z;i<u-t;i+) strcpy(str1i.name,str1i+1.name); strcpy(str1i.sex,str1i+1.sex); strcpy(str1i.xueli,str1i+1.xueli);str1i.age=str1i+1.age; str1i.num=str1i+1.num; str1i.gongzi=str1i+1.gongzi; if(z=u) printf("tt没有此职工号信息n"); printf("nnn");printf("tt职工号 姓名 性别 年龄 学历 工资n"); for (i=0;i<u-t;i+) printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi); printf("n");printf("tt是否继续进行操作,继续(Y),退出(n)n");getchar();a=getchar();if (a='y'|a='Y') goto N;else printf("n");printf("ttt按1键退出n");scanf("%d",&k);getchar(); /信息查找函数/void czsj()int i,y;printf("tttn");printf("ttt *n");printf("ttt O(_)O n");printf("ttt *欢迎进入信息查找系统*n");printf("ttt *n"); printf("tttn");printf("nnn");R:printf("ttt请输入要查询的职工号:");scanf("%d",&y);printf("nn");printf("tt职工号 姓名 性别 年龄 学历 工资n");for(i=0;i<u;i+)if(y=str1i.num)printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi); printf("n");printf("nn");printf("tt是否继续进行操作,继续(Y),退出(n)n");getchar();a=getchar();if (a='y'|a='Y') goto R;else printf("n");printf("ttt按1键退出n");scanf("%d",&k);getchar();/信息修改函数/void xgsj()char str3100; int i,b,z,h1,h2,str2;printf("tttn"); printf("ttt *n"); printf("ttt Now,data will be changed! n");printf("ttt !_ 信息 修改 系统 _! n"); printf("ttt *n"); printf("tttn"); printf("nnn"); Q: printf("tt请输入要修改的职工号:"); scanf("%d",&h1); printf("tt请再次输入要修改的职工号:"); scanf("%d",&h2); if (h1=h2) for(i=0;z=i,i<u;i+) if (h1=str1i.num) break; printf("nnn"); printf("tt要修改的职工信息是n"); printf("n");printf("tt职工号 姓名 性别 年龄 学历 工资n");printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi);printf("nnn"); printf("n请输入你要修改第几项n");scanf("%d",&b); printf("请输入你要修改的内容n");if (b=1|b=4|b=6)scanf("%d",&str2);else scanf("%s",&str3);switch (b)case 1: str1i.num=str2; break;case 2: strcpy(str1i.name,str3); break;case 3: strcpy(str1i.sex,str3); break;case 4: str1i.age=str2; break;case 5: strcpy(str1i.xueli,str3); break;case 6: str1i.gongzi=str2; break;default:printf("请输入有效的字符n");printf("nnn"); printf("tt职工号 姓名 性别 年龄 学历 工资n"); for (i=0;i<u-t;i+) printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi); printf("n"); printf("nn");printf("tt是否继续进行操作,继续(Y),退出(n)n");getchar();a=getchar();if (a='y'|a='Y') goto Q;else printf("n");printf("ttt按1键退出n");scanf("%d",&k);getchar(); /信息计算排序函数void jspx()void zghao();void zgxm();void zgnl();void zggz();char g;inti,j; float s=0; printf("t §§§§§ n"); printf("t n"); printf("t n"); printf("t 欢迎 进入 工资 排序 系统 n"); printf("t n");printf("t n");printf("t n"); printf("nnn");printf("tt职工号 姓名 性别 年龄 学历 工资n");for (i=0;i<u-t;i+)printf("tt%dt",str1i.num);printf("%st",str1i.name);printf("%st",str1i.sex);printf("%dt",str1i.age);printf("%st",str1i.xueli);printf("%d",str1i.gongzi); printf("n"); printf("nnn");for(j=0;j<u-t;j+) s=s+str1j.gongzi;printf("tt总工资是%10.1fntt平均工资是%10.1fn",s,s/(u-t);printf("nnnn");printf("ttt*n");printf("ttt*1 按职工号排序*n");printf("ttt*n");printf("ttt*2 按职工姓名排序*n");printf("ttt*n");printf("ttt*3 按职工年龄排序*n");printf("ttt*n");printf("ttt*4 按职工工资排序*n");printf("ttt*n");printf("nnn");printf("tt请输入所需功能对应的字母:");getchar();g=getchar();switch (g)case '1': system("cls");zghao();break;case '2': system("cls");zgxm();break;case '3': system("cls");zgnl();break;case '4': system("cls");zggz();break;default:printf("请输入有效的字符

    注意事项

    本文(C语言课程设计学生成绩管理系统2 .doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开