版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 程序设计语言课程设计 学生信息管理系统 系 、 部: 计算机与信息科学系 专 业: 信息与计算科学 班 级: 信本1003班 姓 名: 学 号: 学生信息管理系统1、设计目的本课程设计为学生提供了一个既动手又动脑,自学,查资料,独立实践的机会。将本学期课本上的理论知识和实际有机的结合起来,锻炼学生实际分析问题和解决问题的能力,提高学生适应实际、实践编程的能力,使对c+系统编程有一个大致的了解2、 总体设计(程序设计组成框图、流程图)a、学生成绩的录入、统计、查询(可根据名字首字母查询)、修改、删除、输出。 画出功能结构图。3、 详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用
2、关系描述等)函数、部分程序及其说明:int id;/学号char name20;/姓名int age;/年龄char sex;/姓别int score3;/成绩(t语文t数学t英语)char address50;/地址char birthday20; /出生年月char telephone15;/电话char email50;/e-mailint avg;/平均成绩char name120;/登录用户名char mima17;/登录密码struct student stus50;/全局学生结构体数组int count = 0;/统计学生个数 name=yinzhaoxia;/登录名char m
3、ima=123456 ;/密码main():此函数主要是调用录入、统计等函数对成绩表进行处理;通过使用switch函数判断用户所选择的序号,再进入相应的函数。insertstudent();/添加学生信息selectallstudent():查询所有学生信息aaxingmingchaxunstudent();/姓名首字母查询aaxuehaochauunstudent();/根据学号查找aaxingmingchauunstudent();/根据姓名查找xiugaistudent();/修改学生信息anxuehaopaixustudent();/根据按学号排序anxingmingshozimupa
4、ixunstudent();/按姓名首字母排序anchengjpaixustudent();/按成绩排序xunzepaixu(); /选择排序方式shanchustudent();/删除学生信息shanchustudent1(int len,int index);/根据学号删除学生信息anxingmingshozimuchaxunstudent();/按姓名首字母查询4、 调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措 测试主要的问题: 是“排序”解决方案: 上网查资料和请教老师和同学5、 源程序如下 /* *内容:学生信息管理系统 *作者:尹朝霞 *时间:
5、2011年6月2日 */#include #include #include #include struct student int id;/学号char name20;/姓名int age;/年龄char sex;/姓别int score3;/成绩(t语文t数学t英语)char address50;/地址char birthday20; /出生年月char telephone15;/电话char email50;/e-mailint avg;/平均成绩;struct denglu char name120;/登录用户名char mima17;/登录密码;/全局学生结构体数组struct st
6、udent stus100;/统计学生个数int count = 0;char mima=123456 ;/密码void insertstudent();/添加void printstudent(struct student s);/输出信息格式void selectallstudent();/查询void aaxingmingchaxunstudent();/姓名首字母查询void aaxuehaochauunstudent();/学号查找void aaxingmingchauunstudent();/姓名查找void xiugaistudent();/修改void anxuehaopaix
7、ustudent();/按学号排序void anxingmingshozimupaixunstudent();/按姓名首字母排序void anchengjpaixustudent();/按成绩排序void xunzepaixu(); /排序void shangchustudent();/删除void shanchustudent1(int len,int index);/根据学号删除学生void anxingmingshozimuchaxunstudent();/按姓名首字母查询void main() struct denglu denlu;char name=yinzhaoxia;/姓名 c
8、har mima220;int i;printf(tt欢迎进入登陆界面n);printf(tt(*_*) 嘻嘻请输入您的名字:);gets(1);printf(tt(*_*) 嘻嘻请输入您的密码:);for(i=0;i6;i+) mima2i=getch(); printf(*);mima2i=0;if(strcmp(1,name)=0)&(strcmp(mima2,mima)=0)printf(nttt 【.恭喜您登陆成功.】nnn);doint selected;printf(t *欢迎使用学生管理系统*n);printf(1.添加学生 2.删除学生
9、 3.修改学生 4.按学号查找学生n); printf(5.查询所有学生 6.按姓名查询学生 7.排序 8按姓名首字母查询n);printf(9.退出程序n);printf(请选择以上列表中的功能:);scanf(%d,&selected);switch(selected)case 1:insertstudent();/添加break;case 2:shangchustudent();/删除break;case 3:xiugaistudent();/修改break;case 4:aaxuehaochauunstudent();/学号查找break;case 5:selectallstudent
10、();/查询break;case 6:aaxingmingchaxunstudent();/姓名查找break;case 7: xunzepaixu(); /排序break;case 8: anxingmingshozimuchaxunstudent();/姓名首字母查询 break;default:printf(t *谢谢使用学生管理系统* n);printf(t *版权所有 * 违者必究* n);exit(0);while(1);elseprintf(nttt 对不起您的输入有误,不能进入n);void insertstudent()char result;int i,sum=0;dopr
11、intf(请输入第%d个学生信息:n,count + 1);printf(t学号:); scanf(%d,&stuscount.id);printf(t姓名:);fflush(stdin);gets();printf(t年龄:);scanf(%d,&stuscount.age);printf(t性别:);fflush(stdin);stuscount.sex = getchar();printf(t成绩:n);sum=0;for(i = 0;i 3;i+)printf(tt第%d门成绩:,i + 1);scanf(%d,&stuscount.scorei); sum
12、+=stuscount.scorei;stuscount.avg=sum/3;fflush(stdin);printf(t家庭地址:);gets(stuscount.address);printf(t出生年月:);gets(stuscount.birthday);printf(t电话:);gets(stuscount.telephone);printf(te-mail:);gets(stuscount.email); count+; printf(是否还要继续输入学生信息?(y/n));fflush(stdin);result = getchar();while(result != n & r
13、esult != n);selectallstudent();void selectallstudent()int i;printf(所有信息如下:n);printf(学号t姓名t年龄t性别t语文t数学t英语t住址t出生年月t电话te-mailn);for(i = 0;i count | a 1) printf(对不起没有这个学号,请您认真查询后再输入); else printf(您要查询的学生信息如下:n); printf(学号t姓名t年龄t性别t语文t数学t英语t住址t出生年月t电话te-mailn); for(i=0;icount;i+) if(a=stusi.id) printstud
14、ent(stusi); printf(是否还要继续查询学生信息?(y/n));fflush(stdin);result = getchar(); while(result != n & result != n);void aaxingmingchaxunstudent() char result; int i,g=0; struct student stu1; do g=0; printf(请输入您要查询学生姓名:); fflush(stdin); gets(); for(i=0;icount;i+) if(strcmp(,)!=0) g
15、+; continue; if(g=count) printf(对不起没有这个姓名,请您认真查询后再输入); else printf(您要查询的学生信息如下:n); printf(学号t姓名t年龄t性别t语文t数学t英语t住址t出生年月t电话te-mailn); for(i=0;i count | b 1) printf(对不起没有这个学号,请您认真查询后再输入);elsefor(i=0;icount;i+) if(b=stusi.id) printf(请重新输入要修改的学生信息:n);printf(请输入学号);scanf(%d,&stusi.id);printf(t姓名:);fflush(
16、stdin);gets();printf(t年龄:);scanf(%d,&stusi.age);printf(t性别:);fflush(stdin);stusi.sex = getchar();printf(t成绩:n);for(j = 0;j 3;j+)printf(tt第%d门成绩:,j + 1);scanf(%d,&stusi.scorej);fflush(stdin);printf(t家庭地址:);gets(stusi.address);printf(t出生年月:);gets(stusi.birthday);printf(t电话:);gets(stusi.telep
17、hone);printf(te-mail:);gets(stusi.email);printf(修改后的学生信息如下:n);printf(学号t姓名t年龄t性别t语文t数学t英语t住址t出生年月t电话te-mailn);printstudent(stusi); printf(修改后的所有学生信息如下:n);printf(学号t姓名t年龄t性别t语文t数学t英语t住址t出生年月t电话te-mailn);selectallstudent();printf(是否还要继续修改学生信息?(y/n));fflush(stdin);result = getchar(); while(result != n
18、& result != n);void anxuehaopaixustudent() struct student temp; int i,j,k=0; printf(请问您是想按降序还是按升序排序(1/2)); scanf(%d,&k); if(k=1) for(i=0;icount;i+) for(j=0;jcount-i-1;j+) if(stusj.idstusj+1.id) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的学生信息如下:); selectallstudent(); else if(k=2) for(i=0;ico
19、unt;i+) for(j=0;jstusj+1.id) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的学生信息如下:); selectallstudent(); void anxingmingshozimupaixustudent() struct student temp; int i,j,e; printf(请问您是想按降序还是按升序排序(1/2)); scanf(%d,&e); if(e=1) for(i=0;icount;i+) for(j=0;jcount-i-1;j+) if(0-stusj+1.nam
20、e00) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的学生信息如下:); selectallstudent(); if(e=2) for(i=0;icount;i+) for(j=0;j0) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的学生信息如下:); selectallstudent(); void anchengjpaixustudent() struct student temp; int i,j,f; printf(请问您是想按降序还是按升序排序(1/2)); sc
21、anf(%d,&f); if(f=1) for(i=0;icount;i+) for(j=0;jcount-i-1;j+) if(stusj.avgstusj+1.avg) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的学生信息如下:); selectallstudent(); if(f=2) for(i=0;icount;i+) for(j=0;jstusj+1.avg) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的学生信息如下:); selectallstudent();
22、void xunzepaixu() int c; printf(请选择是按学号排序/按姓名的首字母排序/按平均成绩排序(1/2/3)n); scanf(%d,&c); if(c=1) anxuehaopaixustudent(); else if(c=2) anxingmingshozimupaixustudent(); else if(c=3) anchengjpaixustudent(); void shangchustudent()char result;int s;doprintf(请输入你要删除的学生学号n);scanf(%d,&s);if(s count | s 1)printf(
23、对不起,没有这个学号,请您认真查询后再输入n);elseif(count=1) printf(信息已经删完。n); break;elseshanchustudent1(count,s-1);count-;selectallstudent();printf(是否还要继续删除学生信息?(y/n));fflush(stdin);result = getchar();while(result != n & result != n);void shanchustudent1(int len,int index)int i;for(i = index;i = len;i+)stusi+1.id -=1;
24、stus i = stus i + 1; len-;void anxingmingshozimuchaxunstudent() char result; int i,p=0; char e; do p=0; printf(请输入您要查询学生的姓名首字母); fflush(stdin); e = getchar(); for(i=0;icount;i+) if(0)!=0) p+;continue; if(p=count) printf(对不起没有这个姓名,请您认真查询后再输入); else printf(您要查询的学生信息如下:n); printf(学号t姓名t年龄t性
25、别t语文t数学t英语t住址t出生年月t电话te-mailn); for(i=0;icount;i+) if(0)=0) printf(您要查询的学生信息如下n:);printf(学号t姓名t年龄t性别t语文t数学t英语t住址t出生年月t电话te-mailn);printstudent(stusi); printf(是否还要继续查询学生信息?(y/n));fflush(stdin);result = getchar(); while(result != n) & (result != n) ); ut2apodfxxc02gybkskcww97mrqqwhoj5tl15z
26、t6jipyytycummtarp3v1n5luizi3xh3bhwyreko8d9g7nmzqowpjetldrw08gvs8dsdqqygc3ce7moo2tlf0jf1gk74iuxybmtivr97ckrfvqult5fn2t6mpjr6rbzvpsortzvij5nb5ndvvsr4iwr1twlfkglspzuhrjq3cmzu98euouijdlszqpmvrw9zkupxf8wfug9l2g9277g2rtipa1ypczeuqxpkbhtvdcooqozxuz3vjrzmocijym62zchmeootyes8ebmm932tbz2yo09rtszeys8zrd2yktj8l
27、6jeazvajnfbtrylvsm6ofbftoxvrffn7owiygjlamkunxjybz5rrb7r4vsur9zpfzfmfsjhcfca37lnw2vvlrkn7r8psz1bn6oric5hu5z6hcxayqynpog8duybawqsl20csg06dh2sm8hltgpkicskrgopdpuhbj1lmpk7lydvc6nnmwl3fwhzftfvyaary7lhssxj10v3ph3y19bxyr77ib7cpzsu2tijqe3hkqkkau9kskcphkxuikvvyjzpg2yijrkqfbggovyqkuxnwi9omnjtt6qilzxtyrf7d20fb
28、mabcfiixrqkusvnxbppfuxyq1fjskfsubkgs2duvqc9sz4jkbgn4qqv66pyoarjurnfj3txyfclzieeptwfjthpheipdfnqnr2hjqkv2dzwtmpdjqkbcxmovdsjqctjagjmdlskpgad2s0h0vmzgaht36gyuez7umank1ndreubeqdgrx0venqgnsyib2ilq3siqrnl4m56t7z8y8da5k0kupn5nzg4jvjdtffhyt82aogqkxo4vblmleiy2p7hthbho07rcfttxodydppdtqso7wxd0j6fkklgm4wodzplhtrr2xgqn13hqy59zu1gegdyqnihntavsieuefqcyfucjwd3vk5i7ykmhundmiz ut2apodfxxc02gybkskcww97mrqqwhoj5tl15zt6jipyytycummtar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年中国无水氯化钙行业未来发展趋势及前景调研分析报告
- 建筑企业各部门职责
- 大楼消防系统课程设计
- 团队建设活动安全应急预案
- 家长会班主任发言稿的准备技巧
- 支教课程设计认识幸福
- 养老院物业管理服务方案
- 技术接受模型课程设计
- 小班五一节主题课程设计
- 新入职一个月工作总结范文
- 完整版场记单模板
- 实木家具工艺标准(全流程)
- 高一语文必修一4篇古文 词类活用(课堂PPT)
- 商业发票Commercial Invoice模板2
- OPERA系统培训ppt课件
- 电镀工艺-电镀镍
- 幼小衔接中幼儿园与小学合作的国内外研究现状分析
- 110Kv输变电工程电气安装技术交底
- 录屏软件Camtasia_Studio使用教程
- 工厂常用英语
- 海上平台场址工程地质勘察规范
评论
0/150
提交评论