信息管理设计报告软件工程.docx
- 文档编号:3745502
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:13
- 大小:111.64KB
信息管理设计报告软件工程.docx
《信息管理设计报告软件工程.docx》由会员分享,可在线阅读,更多相关《信息管理设计报告软件工程.docx(13页珍藏版)》请在冰豆网上搜索。
信息管理设计报告软件工程
交大城市学院
《软件工程》课程设计
题目学生信息管理系统
班级计算机102
学生严祎乐
学号11030074
设计时间2013年11月16日~
2013年11月23日
学生信息管理系统
一、程序分析与设计
本系统主要用于学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,针对这些要求设计了学生管理信息系统。
本课程设计主要解决与学生信息管理相关的问题,设计一个功能齐全的学生管理信息系统。
同时实现学生信息的添加、删除、修改和查询。
其基本功能有:
添加学生信息。
删除学生信息。
修改学生信息。
查询学生信息。
退出。
1、方案设计
系统要求实现许多的功能,因此遵循结构化程序设计思想来进行本系统的设计—自顶向下、逐步细化,将系统设计任务分解出许多子功能模块进行设计。
2、模块功能说明
(1).输入模块:
voidaddinfo()
录入需要管理的学生信息并将信息保存于文件中,以方便日后进行读取、更新等操作。
(2).删除模块:
voiddeleteinfo()
可对图书信息做删除处理。
(3).修改模块:
voidmodifyinfo()
可根据需要对多个图书信息进行修改。
(4).查询模块:
intsearchinfo()
可对已建立的学生信息进行查询。
(5).退出系统:
选择该项,自动退出该系统。
二、设计流程图
学生信息管理
退出系统
修改模块
查询模块
删除模块
输出模块
输入模块
删除学生信息
退出系统
录入顺序显示
修改学生信息
退出系统
退出系统
流程图,函数之间相互调用的图示,程序设计及编码,运行结果。
(其他小模块类似)
开始
输入choose的值
判断choose的值
删除模块
输入模块
输出模块
修改模块
退出系统
查询模块
结束
输要删除的学号
输要修改的学号
输要查询的学号
判断Num的值
判断Num的值
判断Num的值
录入顺序显示
退出系统
删除学生信息
退出系统
退出系统
修改学生信息
三、源程序清单
#include
#include
#include
#include
structstudentinfo{
charsno[10];
charsname[10];
};
structstudentinfostudents[10];
intlastpos;
voidlogin();
voidaddinfo();
voidmodifyinfo();
voiddeleteinfo();
intsearchinfo();
voidshowmainmenu();
voidstart();
voidmain()
{
login();
}
voidstart()
{
intchoose=0;
showmainmenu();
scanf("%d",&choose);
printf("\n");
while(choose!
=5)
{
system("cls");
switch(choose)
{
case1:
addinfo();break;
case2:
deleteinfo();break;
case3:
modifyinfo();break;
case4:
searchinfo();break;
printf("任意键返回\n");
scanf("%c",&choose);
}
showmainmenu();
scanf("%d",&choose);
}
}
voidshowmainmenu()
{
printf("\n");
printf("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n");
printf("☆☆\n");
printf("☆学生信息管理系统☆\n");
printf("☆☆\n");
printf("☆作者:
严祎乐☆\n");
printf("☆☆\n");
printf("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n");
printf("☆☆\n");
printf("☆1、添加学生信息2、删除学生信息☆\n");
printf("☆☆\n");
printf("☆3、修改学生信息4、查询学生信息☆\n");
printf("☆☆\n");
printf("☆5、退出☆\n");
printf("☆☆\n");
printf("☆☆\n");
printf("☆☆\n");
printf("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n");
printf("\n");
printf("请选择您需要的操作序号(1-5)按回车确认:
\n");
}
voidlogin()
{
inti=0,j=0;
charsname[10],spwd[10],c;
for(i=0;i<3;i++)
{
printf("请输入用户名:
");
scanf("%s",sname);
printf("请输入密码:
");
while((c=getch())!
=13)
{
spwd[j++]=c;
putchar('*');
}
spwd[j]='\0';
if(strcmp(sname,"yl")==0&&strcmp(spwd,"yanyile")==0)
{
system("cls");
start();
}else
{
printf("\n你输入的用户名或密码错误,请重新输入!
\n");
}
}
exit(0);
}
voidaddinfo()
{
inti=lastpos;
printf("请输入学生的学号:
");
scanf("%s",students[i].sno);
printf("请输入学生的姓名:
");
scanf("%s",students[i].sname);
lastpos++;
printf("您输入的信息为:
学号:
%s姓名:
%s\n",students[i].sno,students[i].sname);
}
voidmodifyinfo()
{
charNum[10]={0};
inti=0;
printf("请输入要修改的学生学号:
\n");
scanf("%s",Num);
for(i=0;i<10;i++)
{
if(!
strcmp(Num,students[i].sno))
break;
}
printf("您查找的信息为:
学号:
%s姓名:
%s\n",students[i].sno,students[i].sname);
printf("请输入新的学生学号:
");
scanf("%s",students[i].sno);
printf("请输入新的学生姓名:
");
scanf("%s",students[i].sname);
printf("您输入的信息为:
学号:
%s姓名:
%s\n",students[i].sno,students[i].sname);
}
voiddeleteinfo()
{
charNum[10]={0};
inti=0;
printf("请输入要删除的学生学号:
\n");
scanf("%s",Num);
for(i=0;i<10;i++)
{
if(!
strcmp(Num,students[i].sno))
break;
}
for(;i<9;i++)
{
students[i]=students[i+1];
}
}
intsearchinfo()
{
inti=0;
printf("学号姓名\n");
for(i=0;i { printf("%s%s\n",students[i].sno,students[i].sname); } return0; } 四、调试过程 a)用户验证如下: b)系统的菜单如下: c)添加学生信息的功能操作方法如下: d)删除学生信息的功能操作方法如下: e)修改学生信息的功能操作方法如下: f)查询学生信息的功能操作方法如下: g)退出: 五、程序有待改进的地方 运行的结果没有预想中的好,数据的输出格式不太规范,而且各模块也出现了一些小问题。 由于时间很短,在报告中设想到的好多功能都没有实现。 六、本次实习的收获和建议 在程序的编写过程中,我充分体会了编程工作者的辛苦,因为没一个细微的细节都必须十分的注意。 如果稍有不慎,就会全盘皆“输”。 而且往往很多时候,程序我自己觉得非常正确,但是就是便以通不过,在查找错误的过程中,面临着否认自己的过程,非常的难受。 同时由于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢,往往一天下来什么都没做成功。 这个过程曾给我沉重打击,不过当看到程序没错误能执行出来时,心中的喜悦难以用言语来表达。 在开始编写程序的时候,我看到别人的程序功能非常的详细,而且界面非常的漂亮,总希望自己的程序也多一些功能更加的完善。 但是渐渐的我发现编写一个优秀的程序决不是一蹴而就的事情,需要长时间的积累和经验,而这个方面又是我的弱项。 因此在同学的帮助下,我认识到自己的不足和劣势,不要贪图大而全,只要尽我所能,编制一个实用简单的程序也是一件很不容易的事情。 在同学的帮助和自己的努力之下,我终于做出了一个简单的程序。 虽然程序的功能简单,而且我想在实际的运用中,肯定会有所不足。 因为学生信息管理系统工作的内容非常的丰富,我涉及到的仅仅是学生信息管理的一部分简单内容,离实际的客户需求肯定还有一定的差距。 但是它毕竟代表着我对这段时间所学的知识的掌握。 由于我的知识浅薄,经验不足及阅历破浅,因此在该程序的设计方面还有很多不足,比如功能过少,只是简单的实现了数据的添加,对数据的删除和查询等操作均为实现,因此需要今后更加深入的学习和努力。 参考文献 [1]《C程序设计》谭浩强清华大学出版社 [2]《软件工程导论》张海藩清华大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息管理 设计 报告 软件工程