c语言学生学籍管理修改,C语言课设之学生学籍管理系统.doc

253b171540df25e1b84436cbe50dfc72.gifC语言课设之学生学籍管理系统.doc

题目学生学籍管理系统 目录一.个人简介。二.报告摘要。三.报告目录。四.报告正文。 1、系统需求分析 2、系统总体设计 3、系统详细设计六.总结。 二.报告摘要 这个C语言课程设计是关于学生学籍管理系统的设计,题目要求能够录入数据,查询,删除和排序的功能。报告依次以主函数板块、数据录入板块、查询板块、删除板块、排序板块的顺序进行。 三.报告目录 1 主函数 2 数据录入 3 查询 4 删除 5 排序 四.报告正文 1 系统需求分析 根据题目需求,在程序中要求浏览学生的信息,应该提供数据录入、查询、删除、排序的操作。题目要求实得成绩、实得学分根据条件自动运算,应该提供求综合成绩和实得学分的算法,另外还应该提供键盘式选择菜单实现功能选择。 2 系统总体设计 数据录入数据查询删除数据数据排序 学生学籍管理系统 3 系统详细设计 (1)主函数 负责提供输入、处理和输出部分的函数调用,其中各功能模块用菜单方式选择。 程序 void menu int n,w; do putsttMENUnn;putstttt1.enter new data-student;putstttt2.search by name;putstttt3.search by learn number;putstttt4.delete data;putstttt5.insert data;putstttt6.enter new data-sorce;putstttt6.exit;putsnnttn;printfchoice your number1-9bb;scanfd,ifn1n9w11;getchar; else w10;whilew11;switchncase 1enter;breakcase 2search by name;break;case 3search by learn number;break;case 4del;break;case 5insertbreak;case 6exit0;break;mainmenu; (2)数据录入板块 数据信息中学号、姓名等是字符型,采用字符型数组,分数、号码、等为整数,可以采用整型数组,实得学分可能为小数,采用实型。采用结构体数组存放学生数据信息到文件。程序/*/define N 10struct student int num; char name20; char sex; char tel20; char domi3;stuN;viod enter new data-studentint i,n;printfhou many students0-d,n-1;forn1;n10;nprintfn enter data nownn;fori0;in;iprintfn dth student record.n,i1;i;ifi0 saven;printf_back;define N 10struct course int num; int course_num; char coursename; int normalsorce int normal;平时成绩 int lab;实验成绩 int text;考试成绩 int ture;综合成绩 float act;实得学分couNvoid enter new data-sorceint i,n,z,c; float s; printfhow many num0-d N-1; forn1;n10;n printfn enter data nownn; fori0;in;i printn dth record.n,i1; i; ifi0 saven; printf_back; ifcou1.lab-1 cou1.truecou1.normal*0.3cou1.text*0.7; else cou1.truecou1.lab*0.15cou1.normal*0.15cou1.text*0.7; ifc100 scou1.normalsorce*1; else ccou1.text/10; switchc case 10 case 9scou1.normalsorce*0.9;break; case 8scou1.normalsorce*0.8;break; case 7scou1.normalsorce*0.75;break; case 6scou1.normalsorce*0.6;break; case 5 case 4 case 3 case 2 case 1 case 0s0;break; defaultprintferrorn; coui.acts; (3数据查询 这个模块要求a.输入一个学号或姓名查讯学生的基本信息并显示输出;输入一个宿舍号码,可查出本室所有学生的基本信息并显示输出; c.输入一个学号时,查出此学生所有课程情况。程序/*/Searchint i,n,k; Struct student s; Struct course c; nload; do do k-1; printfnnenter name that you want to search name; scanfs,s.name; printf _face; do n-1; Printfnnenter domi that you want to search domi scanfd,s.domi; printf_ face; do i-1; printfnnenter num that you want to search num ; scanfdcdf,c.num,c.coursename,c.ture,c.act; printf_face; (4)删除数据 题目要求在删除A.TXT中一个学生信息时,B.TXT中相应的信息也要被删除。程序/*/void delstruct student s sturct course c; FILE*fp; int i,n,k w01,w1,w20; nload; do k-1; printf_face; fori0,in;iifi0i100 printfnnremember no. which needed delete.Pass any key to contiune.; getch putsnn; printf_onei; do printfnnenter no. That you want to delete no.; scanfs,s.num; fori0;in;i ifstrcmps.num,stui.mum0 ki; sstui; fori0,in,i ifstrcmpcouistui ifk-1printfnnno existPlease again; whilek-1; printf_face;printf_onek; w1delete_datak,n; ifw11 Printfnsuccessful nnare you delete another nnt1)yes 2back with savetbb; scanfd, w21;else w00; ifw21 stuksifw01w21 saven; whilew01;menu (5)数据排序 能实现选择按综合成绩或实得学分升序或降序排序并显示数据。程序/*/void orderint i,j,k; int m,n,p; struct course s; struct course c; fori0;i9;i ki;forji1;j10;j ifcouj.truecouk.true kj;scoui.true;coui.truecouj.true;couj.trues;form0;m9;m pm fornm1;n10;n ifcou.actncou.Actppn; c cou.actm;cou.actmcou.atcn;cou.actnc; (6)公共函数*void printf_face1 每次要输出文件1数据的时候用到(打印到数据的第一排,提示作用) printfn 学号 姓名 性别 宿舍号码 电话号码n; *void printf_face 每次要输出文件2数据的时候用到(打印到数据的第一排,提示作用) printfn 学号 课程编号 课程名称 学分 平时成绩 实验成绩 卷面成绩 综合成绩 实得分数n; *void printf_back 返回函数 int w; printfnnt数据输入成功_nn; printf选择需要实现的功能nnt1.浏览输入的数据t2.返回主菜单 bb; scanfd, ifw1 browse; else menu; *int saveint n 保存输入的数据到txt文档FILE *fp; int i; iffpPro.txt,wbNULL printfnCannot open filen; return NULL; fori0;in;i ifcoursei.num0 iffwrite fclosefp; return 0; *void no_int i,int n 检查输入数据是否存在以及编号是否正确int j,k,w1; do w10; forj0;coursei.numj0;j 判断输入编号格式是否正确 ifcoursei.numj9puts errorOnly be made up of0-9.Please ren; w11;break; ifw11 fork0;kn;k ifkistrcmpcoursek.num,coursei.num0 判断此编号是否存在putsThis record is exist.please ren; whilew11;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值