C语言程序设计与报告学生信息标准管理专业系统设计_第1页
C语言程序设计与报告学生信息标准管理专业系统设计_第2页
C语言程序设计与报告学生信息标准管理专业系统设计_第3页
C语言程序设计与报告学生信息标准管理专业系统设计_第4页
C语言程序设计与报告学生信息标准管理专业系统设计_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

设计题目:学生信息管理系统设计学号:院校班级:姓名:指导老师:目录HYPERLINK一、设计题目----------------------------------------------------------3HYPERLINK二、概述系统----------------------------------------------------------3HYPERLINK三、设计纲领----------------------------------------------------------4HYPERLINK四、运行效果图-------------------------------------------------------5HYPERLINK五、设计步骤图-------------------------------------------------------8HYPERLINK六、调试过程--------------------------------------------------------14HYPERLINK七、设计总结--------------------------------------------------------14HYPERLINK八、参考文件--------------------------------------------------------15HYPERLINK九、源程序清单-----------------------------------------------------15学生信息管理系统设计学生信息包含:学号,姓名,年纪,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功效:系统以菜单方法工作。学生信息录入功效——输入。学生信息浏览功效——输出。学生信息查询功效——算法。按学号查询;按姓名查询。5、学生信息删除和修改概述系统我关键设计一个能实现学生信息管理系统,让它来运行和管理学生信息。它在现实生活中利用方便、管理方便。它能输入学生学号、年纪、性别、出生年月、地址电话E-mail。系统以菜单方法进行工作,进入子菜单后,还能够返回主菜单。在子菜单中多种操作全部有汉字说明,操作简单、易懂。只要我们正确操作系统,系统就无异常现在,当然系统也能对部分基础错误做出提醒,并能让使用者重新进行操作。对各个操作成功,如:添加学生信息、修改学生信息、删除学生信息,系统全部输出“…….成功”字样。系统对删除和修改前,还进行“确定”和“取消”。系统对不存在学号和姓名系统能判定是否存在。对已存在学号,操作者不能添加和这个学号一样学生信息,同时系统还提醒已经有此学号。对于修改、删除和查询,系统碰到不存在学生能提醒没有这个信息。设计纲领分析题目,想想程序所用到知识点,再进行分析程序总体构思。对于用到得悉识不太了解,先翻翻书,看一下这方面知识。为了不让程序看起来乱乱,把程序分成多个大函数,并有多个文字注释函数作用。这么程序各个功效就独自成为一个函数。这么有利于我们对程序错误检验,及对程序修改和优化。做出菜单栏:1.添加学生信息2.全部学生信息3.修改学生信息4.删除学生信息5.查看学生信息6.退出系统由每一个子菜单做为一个函数。设计纲领:1:查看相关书籍2:建立函数结构体3:编程主函数4:编程各子菜单函数5:检验子函数和主函数之间联络6:运行程序,如有错误,仔细检验。7:错误操作捕捉。8:查看运行效果,如有以下情况(修改代码):(1)发觉问题某功效未实现(2)死循环(3)运行无效(4)没有操作提醒信息(5)内存错误运行效果图设计步骤图开始0主函数开始0主函数输入语句输入语句判定a值判定a值选择语句switch(选择语句switch(a)退出系统查看学生信息删除学生信息修改学生信息全部学生信息添加信息函数退出系统查看学生信息删除学生信息修改学生信息全部学生信息添加信息函加信息函1添加信息函数0<num<0<num<100输出提醒,输出提醒,输入学号num>100判定num值num>100判定num值NYNYYN0判定num是否已存在判定num<100提醒输入,输入num提醒重新输入num提醒输入,输入学生信息是否继续添加信息22输出部分文字for(i=0;i<=100;i++)Y输出stu[i]信息0N输出全部信息函数33修改信息函数提醒输入,输入学号YY修改信息YYN0NN判定num是否存在输出修改信息,提问是否修改提醒num不存在,并提问是否继续修改提问是否继续修改删除信息函数删除信息函数44提醒输入,输入删除学号提醒输入,输入删除学号说明不存在此信息判定是否存在numN说明不存在此信息判定是否存在numN输出删除信息并提问是否删除YYN输出删除信息并提问是否删除YYN提问是否继续删除提问是否继续删除YYstu[num-1].num=0stu[num-1].num=0NN输出删除成功输出删除成功0055提醒查询方法,并选择按学号按姓名输入学号num是否存在输出查询信息提问是否继续查询Y输入姓名姓名是否存在提醒,并重新输入numNY提醒,并重新输入姓名输出查询信息NY提问是否继续查询Y0NN查看信息函数调试过程设计一个程序,错误是难免不了。但我们能够依据编辑系统给出部分提醒去查看程序错误。对不敢肯定正确,翻翻书,看一下这一知识。对难度大就和同学们一起讨论,问一问老师。开发一个系统,耐心是必需,认真也很关键,构思要明确。认为是哪里错误,有时用“/**/”注释起来进行,看看是否还有错误。常错有以下多个情况:1.使用变量,但未有定义,则先定义。2.不该用分号,用到了,把它去掉。3.行最终若有分号则删除,中间若有分号则改成逗号4.若错误行中有if、while、for则要尤其注意条件表示式错误。5.若条件表示式中只有一个等于号,则改成两个等于号。6.for中要用分号分隔表示式,而不是用逗号7.缺乏分号,若错误行中有语句没有用分号结束,则加上分号。8.大小写不对,若错误行中有大写字母则通常全部改成小写字母。9.若有return语句则函数类型必需和return后变量类型一致。设计总结经过此次C程序课程设计,我认为对自己提升很大:克服了偷懒毛病,这在我以后学习和工作中心理定位和调整有很大帮助。我感受到了编程是一项很烦琐周密活动,她不仅需要一个人周密思索问题能力,处理问题能力,还需要有足够耐心和严谨治学作风,来不得半点马虎。经过此次程序设计,我初步学会了程序设计基础方法,学会了怎样去借鉴她人方法和经验,知道怎样去查找资料和整合处理这些资料能力,我上网和上图书馆查找资料,编写C语言原程序,然后是进行编译,这个步骤是一个很痛苦和艰苦,常常会因为一小点错误而在编译失败和再次修改漫漫循环之路中,但失败越多,对人考验就越多,在编译运行成功以后享受成功喜悦也就越多,另外在调试程序过程中不停思索和利用已经学到知识,这对于自己是有很大提升。参考文件[1]谭浩强著.C语言程序设计(第三版).清华大学出版社,[2]谭浩强编著.C程序设计题解和上机指导(第二版)清华大学出版社,1999[3]C编写组编.常见C语言使用方法速查手册.北京:龙门书局,1995源程序清单#include<stdio.h>structstudent/*结构体*/{intnum;charname[20];//学号charsex[5];//姓名intage;//性别charbro[15];//年纪charadd[30];//住址charphone[13];//手机号charem[20];//E-mail}stu[100];//结构体名intlooknum(intnum)/*查看是否有这个学号函数*/{inti;for(i=0;i<=100;i++)if(stu[i].num==num)return(num);}tiaojia()/*添加信息函数*/{intnum,num2,i,x;G:printf("\t请输入学号:");H:scanf("%d",&num);V:if(num>100){printf("\n这个学号太大了!\n请输入1--100学号:");scanf("%d",&num);if(num>100)gotoV;printf("\n");}num2=looknum(num);if(num==num2)/*判定这个学号是否存在*/{printf("\n这个学号已经存在,请重新输入另一个学号。");gotoH;}i=num-1;stu[i].num=num;printf("\t请输入姓名:");scanf("%s",stu[i].name);printf("\t请输入性别:");scanf("%s",stu[i].sex);printf("\t请输入年纪:");scanf("%d",&stu[i].age);printf("\t请输入出生日期:");scanf("%s",stu[i].bro);printf("\t请输入住址:");scanf("%s",stu[i].add);printf("\t请输入手机号:");scanf("%s",stu[i].phone);printf("\t请输入E-maill:");scanf("%s",stu[i].em);printf("\n\t<*添加信息成功*>\n\n");printf("\t1.继续添加\n");printf("\t2.退出添加\n");scanf("%d",&x);switch(x){case1:gotoG;default:break;}}quanbu()/*输出全部信息函数*/{inti;printf("\t\t全部学生信息以下\n\n");printf("学号\t姓名\t性别\t年纪\t出生日期\t住址\t手机号\t\tE-mail\n");for(i=0;i<=100;i++)if(stu[i].num!=0)printf("%d\t%s\t%s\t%d\t%s\t%s\t%s\t%s\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].bro,stu[i].add,stu[i].phone,stu[i].em);}xiugai()/*修改信息函数*/{intx,y,num,num2;K:printf("\t请输入要修改学号:");scanf("%d",&num);num2=looknum(num);if(num==num2) /*判定这个学号是否存在*/{printf("\n\t这个学号信息以下\n\n");printf("学号\t姓名\t性别\t年纪\t出生日期\t住址\t手机号\t\tE-mail\n");printf("%d\t%s\t%s\t%d\t%s\t%s\t%s\t%s\n",stu[num-1].num,stu[num-1].name,stu[num-1].sex,stu[num-1].age,stu[num-1].bro,stu[num-1].add,stu[num-1].phone,stu[num-1].em);printf("\n\t1.确定修改");printf("\n\t2.取消修改\n");scanf("%d",&x);if(x==1){stu[num-1].num=num;printf("\t请输入姓名:");scanf("%s",stu[num-1].name);printf("\t请输入性别:");scanf("%s",stu[num-1].sex); printf("\t请输入年纪:");scanf("%d",&stu[num-1].age); printf("\t请输入出生日期:");scanf("%s",stu[num-1].bro); printf("\t请输入住址:");scanf("%s",stu[num-1].add); printf("\t请输入手机号:");scanf("%s",stu[num-1].phone); printf("\t请输入E-maill:");scanf("%s",stu[num-1].em);printf("\n\t<*修改信息成功*>\n"); gotoP; } elsegotoP;}else{printf("\n\t没有这个学号,你可能记错了!\n");P:printf("\n\t1.继续修改\n");printf("\t2.退出修改\n");scanf("%d",&y);switch(y){case1:gotoK; default:break;}}}voidshanchu()/*删除信息函数*/{intx=2,y=2,num,num2;L:printf("\t请输入要删除学号:");scanf("%d",&num);num2=looknum(num);if(num==num2)/*判定这个学号是否存在*/{printf("\n\t这个学号信息以下\n\n");printf("学号\t姓名\t性别\t年纪\t出生日期\t住址\t手机号\t\tE-mail\n");printf("%d\t%s\t%s\t%d\t%s\t%s\t%s\t%s\n",stu[num-1].num,stu[num-1].name,stu[num-1].sex,stu[num-1].age,stu[num-1].bro,stu[num-1].add,stu[num-1].phone,stu[num-1].em);printf("\n\t1.确定删除");printf("\n\t2.取消删除\n");scanf("%d",&x);switch(x){case1:{stu[num-1].num=0; printf("\t<*删除信息成功*>\n");} default:break;}gotoD;}else{printf("\n\t没有这个学号,你可能记错了!\n");D:printf("\n\t1.继续删除\n");printf("\t2.退出删除\n");scanf("%d",&y);switch(y){case1:gotoL;default:break;}}}voidchakan()/*查看信息函数*/{intx=1,y=2,z=2,i,num,num2;charname,name2;printf("\t1.按学号查询\n\t2.按姓名查询\n");scanf("%d",&x);/*输入查看方法*/if(x==1)/*学号查询*/{M:printf("\t请输入查看学号:");scanf("%d",&num);num2=looknum(num);if(num==num2)/*判定这个学号是否存在*/{printf("\t这个学号信息以下\n\n");printf("学号\t姓名\t性别\t年纪\t出生日期\t住址\t手机号\t\tE-mail\n");printf("%d\t%s\t%s\t%d\t%s\t%s\t%s\t%s\n",stu[num-1].num,stu[num-1].name,stu[num-1].sex,stu[num-1].age,stu[num-1].bro,stu[num-1].add,stu[num-1].phone,stu[num-1].em);gotoJ;}else{printf("\n\t没有这个学号,你可能记错了!\n");J:printf("\n\t1.继续查看\n");printf("\t2.退出查看\n");scanf("%d",&y);switch(y) {case1:gotoM;default:break; }}}if(x==2)/*姓名查询*/{U:printf("\t请输入查看姓名:");scanf("%s",&name);for(i=0;i<=100;i++){if(strcmp(&stu[i].name,&name)==0)/*字符串比较*/if(stu[i].num!=0)/*判定这个学号是否存在*/{printf("\t这个姓名信息以下\n\n");printf("学号\t姓名\t性别\t年纪\t出生日期\t住址\t手机号\t\tE-mail\n");printf("%d\t%s\t%s\t%d\t%s\t%s\t%s\t%s\n",stu[i].num,stu[i]

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论