欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C语言程序报告 学生学籍信息管理系统.docx

    • 资源ID:2433407       资源大小:146.52KB        全文页数:30页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    C语言程序报告 学生学籍信息管理系统.docx

    1、C语言程序报告 学生学籍信息管理系统C语言课程设计院系:工程学院姓名:*学号:*班号:05205235指导教师:*日期:2007年9月 C语言程序设计报告第一部分 题目要求 程序设计题目:学生学籍信息管理系统设计【要求】使用下面的数据,设计一个简单的学籍信息管理系统。学生基本信息文件(A.TXT)及其内容:学号 姓名 性别 宿舍号码 电话号码01 张成成 男 501 8773211102 李成华 女 101 8772311203 王成凤 女 101 8772311204 张明明 男 502 8773433305 陈东 男 501 8773211106 李果 男 502 8773433307 张

    2、园园 女 102 87756122. . . .学生成绩基本信息文件(B.TXT)及其内容:学号 课程编号 课程名称 学分 平时成绩 试验成绩 卷面成绩 01 A01 大学物理 3 66 78 8202 B03 高等数学 4 78 -1 9001 B03 高等数学 4 45 -1 8802 C01 VF 3 65 76 66. . . . . .功能要求及说明:数据录入功能:录入每个学生的学号、课程编号、课程名称、学分、平时成绩、试验成绩、卷面成绩共7个数据。综合成绩、实得分根据条件自动运算。综合成绩的计算:如果本课程的试验成绩为-1,则表示无试验,综合成绩=平时成绩*30%+卷面成绩*70%

    3、;如果试验成绩不为-1,表示本课程有试验,综合成绩=平时成绩*15%+试验成绩*15%+卷面成绩*70%。实得学分的计算:采用等级学分制。综合成绩在90-100之间,应得学分=学分*100%;综合成绩在80-90之间,应得学分=-学分*80%;综合成绩在70-80之间,应得学分=学分*75%;综合成绩在60-70之间,应得学分=学分*60%;综合成绩在60以下,应得学分=学分*0%。(2)查询功能;分为学生基本情况查询和成绩查询两种 1学生基本情况查询: 输入一个学生的学号活姓名,查出此生的基本信息并显示输出。 输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。成绩查询: 输入一个

    4、学号时,查询出此生的所有课程情况,格式如下:学号: 姓名;课程编号: 课程名称: 综合成绩: 实得学分:课程编号: 课程名称: 综合成绩: 实得学分:课程编号; 课程名称: 综合成绩: 实得学分: . 共修:XX科, 实得总学分为:XXX删除功能:当在A.TXT中删除一个学生时,自动地在B.TXT中删除此人所有的信息排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。第二部分 需求分析根据题目要求,由于学生信息是存放在文件中,所以应该提供文件的输入、输出等操作;在程序中要浏览学生的信息,应提供显示、查找、排序等操作;另外还应该提供键盘式选择菜单实现功能选择。第三部分 总体设计根据

    5、上面的需求分析,可以将这个系统的设计分为以下几个模块:第四部分 详细设计主函数主函数设计一般要简单,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。【流程图】程序#includevoid menu() int n,w;do puts(tt*MENU*nn); puts(t 1.browse 2.enter 3.Search ); puts(t 4.browse2 5.enter2 6.Search2); puts(t 7.exit ); puts(nntt*n); printf(Choice your number(1-7): bbbb); scanf(%d,&n); if

    6、(n7) /对选择的数字作判断/ w=1;getchar(); else w=0;while (w=1);switch(n) case 1: browse();break; /浏览模块/ case 2: enter();break; /输入模块/ case 3: search();break; /查找模块/ case 4: browse2();break; /浏览模块/ case 5: enter2();break; /输入模块/ case 6: search2();break; /查找模块/ case 7: exit(0);break; /退出/main() menu();2各功能模块设计输

    7、入模块:先采用结构体数组存储数据struct a int xuehao; char name15; char sex10; int shushenum; int telenum; a10;struct bint xuehao;int kechenghao;char kechengming15;int xuefen;int pingshichengji;int shiyanchengji;int juanmianchengji;int zonghechengji;int shidechengji;b10; a10.b10 中每个数组元素对应一个学生 void jisuan()int i, n,n

    8、1, n2, n3,n4;for(i=0;i90&bi.zonghechengji80&bi.zonghechengji70&bi.zonghechengji60&bi.zonghechengji70) n1=bi.xuefen; bi.shidechengji=(n1)*0.7; break;else if (bi.zonghechengji60) n=bi.xuefen; bi.shidechengji=n*0; break; 此简单程序计算综合成绩与实得学分【程序】enter() int i,n; printf(How many chengjijibenxinxi datas(0-%d)

    9、?:,10); scanf(%d,&n); printf(n Enter data now nn); for(i=0;in;i+) printf(nInput %dth chengjijibenxinxi record.n,i+1); input(i); 调用输入函数 if(i!=0) save(n); 调用保存函数 printf_back(); 一个任务结束时让用户选择是浏览还是返回 浏览模块:该模块的功能是显示所有学生记录信息。【流程图】 【程序】browse() 浏览全部模块 int i,j,n; n=load(); 加载记录 printf_face(); 调用显示数据结构项目函数 fo

    10、r(i=0;in;i+) if(i%10=0) printf(nnPass any key to contiune.); 目的是分屏显示 getch(); puts(nn); printf_one(i); printf(n); 调用显示一个记录的函数 printf(tThere are %d record.n,n); printf(nPass any key to back.); getch(); 按任意键 menu(); browse2() 该浏览模块的功能是显示所有学生的成绩基本信息 int i,j,n; n=load2(); printf_face2(); for(i=0;in;i+)

    11、if(i%10=0) printf(nnPass any key to contiune.); getch(); puts(nn); printf_one2(i); printf(n); printf(tThere are %d record.n,n); printf(nPass any key to back.); getch(); menu(); 查找模块;该模块的功能是根据输入的学生姓名查找对应的记录,找到以后,增加删除功能。【流程图】【程序】search() 查找学生基本信息的模块 int i,n,k,w1=1,w2,w3,w4;struct a s;n=load();do do k=

    12、-1; printf(nnEnter number that you want to search! number); scanf(%d,&s.xuehao); 输入要修改的数据的学号 printf_face(); 调用显示数据结构项目函数 for(i=0;in;i+) 查找要修改的数据 if(s.xuehao=ai.xuehao) k=i; printf_one(k);break; 调用显示一个记录的函数 if(k=-1) printf(nnNo exist!please); printf(nnAre you again?nt 1).Again 2)No and back bbb ); sc

    13、anf(%d,&w1);保证在第一次找的的基础上再查找找不到时能退出 while(k=-1&w1=1); 如果W1不等于1时直返回search2() 查找学生成绩基本信息的模块 int i,n,k,w1=1,w2,w3,w4;struct a s;n=load2();do do k=-1; printf(nnEnter number that you want to search! number); scanf(%d,&s.xuehao); printf_face2(); for(i=0;in;i+) if(s.xuehao=ai.xuehao) k=i; printf_one2(k);bre

    14、ak; if(k=-1) printf(nnNo exist!please); printf(nnAre you again?nt 1).Again 2)No and back bbb ); scanf(%d,&w1); while(k=-1&w1=1);删除模块:该模块的功能是先显示所有学生的信息,考虑到记录的数据较多,建议采用分屏显示【程序】Void del()排序模块:该功能模块的功能是要求将学生记录的综合成绩或实得分升序或降序排序并显示数据。假设这里采用选择法排序。【流程图】【程序】Void order() 排序模块int I,j,n;Struct student s;n=load()

    15、;For(i=0;in-1;i+)Save(n);Puts(“nn”);Printf_back();设计出的程序如下#includevoid menu() int n,w;do puts(tt*MENU*nn); puts(t 1.browse 2.enter 3.Search ); puts(t 4.browse2 5.enter2 6.Search2); puts(t 7.exit ); puts(nntt*n); printf(Choice your number(1-7): bbbb); scanf(%d,&n); if(n7) w=1;getchar(); else w=0;whil

    16、e (w=1);switch(n) case 1: browse();break; case 2: enter();break; case 3: search();break; case 4: browse2();break; case 5: enter2();break; case 6: search2();break; case 7: exit(0);break;main() menu();struct a int xuehao; char name15; char sex10; int shushenum; int telenum; a10;struct bint xuehao;int

    17、kechenghao;char kechengming15;int xuefen;int pingshichengji;int shiyanchengji;int juanmianchengji;int zonghechengji;int shidechengji;b10; void jisuan()int i, n,n1, n2, n3,n4;for(i=0;i90&bi.zonghechengji80&bi.zonghechengji70&bi.zonghechengji60&bi.zonghechengji70) n1=bi.xuefen; bi.shidechengji=(n1)*0.

    18、7; break;else if (bi.zonghechengji60) n=bi.xuefen; bi.shidechengji=n*0; break; enter() int i,n; printf(How many chengjijibenxinxi datas(0-%d)?:,10); scanf(%d,&n); printf(n Enter data now nn); for(i=0;in;i+) printf(nInput %dth chengjijibenxinxi record.n,i+1); input(i); if(i!=0) save(n); printf_back()

    19、; browse() int i,j,n; n=load(); printf_face(); for(i=0;in;i+) if(i%10=0) printf(nnPass any key to contiune.); getch(); puts(nn); printf_one(i); printf(n); printf(tThere are %d record.n,n); printf(nPass any key to back.); getch(); menu(); search() int i,n,k,w1=1,w2,w3,w4;struct a s;n=load();do do k=-

    20、1; printf(nnEnter number that you want to search! number); scanf(%d,&s.xuehao); printf_face(); for(i=0;in;i+) if(s.xuehao=ai.xuehao) k=i; printf_one(k);break; if(k=-1) printf(nnNo exist!please); printf(nnAre you again?nt 1).Again 2)No and back bbb ); scanf(%d,&w1); while(k=-1&w1=1); w4=0;w3=0; if(k!

    21、=-1) printf(nnWhat do you want to do?nt 1.Search another 2.Modify 3.Delete 4.Back menu bbb); scanf(%d,&w2); switch(w2) case 2:w3=modify(k);break; case 3: printf(nAre you sure?nt 1).sure 2).No and back bbb); scanf(%d,&w4); if(w4=1) bk.xuehao=0;bk.kechenghao=0;strcpy(bk.kechengming,xxxx);bk.xuefen=0;b

    22、k.pingshichengji=0;bk.shiyanchengji=0;bk.juanmianchengji=0; bk.zonghechengji=0;bk.shidechengji=0;ai.xuehao=0;strcpy(ai.name,xxxx);strcpy(ai.sex,xxxx);ai.shushenum=0;ai.telenum=0; break; if(w3=1|w4=1) save(n); printf(nnSuccessful.); printf(nnWhat do you want to do?nt 1).Search another 2).Back bbb); s

    23、canf(%d,&w2); while(w2=1); menu(); input (int i) scanf(%d%d%s%d%d%d%d%d%d,&bi.xuehao,&bi.kechenghao,bi.kechengming,&bi.xuefen,&bi.pingshichengji,&bi.shiyanchengji,&bi.juanmianchengji); jisuan(); save(int n) FILE *fp; int i; if(fp=fopen(b.txt,wb)=NULL) printf(nCannot open filen); return NULL; for(i=0

    24、;in;i+) if(ai.xuehao!=0) if(fwrite(&bi,sizeof(struct b),1,fp)!=1) printf(file write errorn); fclose(fp); load() FILE *fp; int i; if(fp=fopen(b.txt,rb)=NULL) printf(nCannot open filen); return NULL; for(i=0;!feof(fp);i+) fread(&bi,sizeof(struct b),1,fp); fclose(fp); return(i-1); printf_face() printf(nt xuehao kechenghao kechengming x


    注意事项

    本文(C语言程序报告 学生学籍信息管理系统.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开