学生信息管理系统1文档格式.docx

上传人:b****8 文档编号:22926445 上传时间:2023-02-06 格式:DOCX 页数:33 大小:94.56KB
下载 相关 举报
学生信息管理系统1文档格式.docx_第1页
第1页 / 共33页
学生信息管理系统1文档格式.docx_第2页
第2页 / 共33页
学生信息管理系统1文档格式.docx_第3页
第3页 / 共33页
学生信息管理系统1文档格式.docx_第4页
第4页 / 共33页
学生信息管理系统1文档格式.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

学生信息管理系统1文档格式.docx

《学生信息管理系统1文档格式.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统1文档格式.docx(33页珍藏版)》请在冰豆网上搜索。

学生信息管理系统1文档格式.docx

4、学生信息查询功能—算法;

按学号查询

按姓名查询

5、学生信息的删除与修改(可选项)。

本人承担的功能有:

(1)、

(2)、(4)。

第三章模版设计说明

3.1系统总框架

 

图3-1系统模块图

3.2主函数的流程图

图3-2主函数流程图

3.3录入学生信息

输入函数:

刷新此前的显示界面,然后输入在执行上步操作后的显示界面

图3-3录入函数流程图

3.4查询学生信息

查询函数:

刷新此前的显示界面,然后查询在执行上步操作后的显示界面

输入学生学号或姓名

开始

是否存在

结束

N

Y

显示所查询学生信息

图3-4查询函数流程图

第四章软件使用说明及运行结果

4.1使用说明

该程序可以实现对学生有关信息查找的功能,安装VisualC++6.0中文版后,在工具栏“文件”中单击“新建”选项,单击“文件”菜单,选择“C++Sourcefile”输入文件名“单项选择题标准化考试系统”。

开始输入程序,程序输入完成,单击“组建”工具栏,选择“编译[简化学生信息管理系统.cpp1]”,待程序无误后,开始执行程序。

根据数据结构、函数功能和主要的流程图,进行录入源代码操作。

在编码时,注意代码的书写规范,包括命名惯例、注释、分隔和缩进等,这样使程序层析清晰,增强可读性和可维护性。

编码操作完成后,先静态检查一下有没有语法错误,然后进行编译,更深一步检查语法错误。

待编译通过时,运行程序,观察是否能够正常运行,如果有问题,再去修改源程序,直至达到了预期的效果。

4.2运行结果

图4-1程序截图一

图4-2程序截图二

第五章课程设计心得与体会

课程设计刚开始的时候,我真的感觉到无从下手。

因为已经过去一个学期了,期间又没有怎么看书,考完试就放下了。

许多知识都已经忘却。

不过老师为我们安排的很周到,一开始并没有直接让我们做系统。

而是复习上个学期最基本的知识。

例如:

通过做一些题目去熟悉冒泡排序,选择排序、指针、如何建立动态存储空间等。

经过这样的训练之后,对C++语言感觉不那么陌生了。

对后面的设计也终于有了点信心。

通过这三周的课程设计,我独立完成了一个较大的C++语言程序的设计,以及认真完成了课程设计报告。

回忆这三周的时间,我收获很大。

首先,我熟练地运用了所学的知识编写程序,并成功的完成,感觉成就感很强,这大大激发了我编程的兴趣;

其次,在设计的过程中遇到了一些困难,我会认真的去思考,或者充分利用网络资源来寻求帮助,提高获取信息的能力。

如果自己解决有困难,我会向老师和同学寻求帮助,在交流中共同进步。

最后,我了解了软件开发的大体过程及各个步骤,这对将来的学习和工作是很有帮助的。

对于计算机专业的大学生来说,积累实战经验是一项极其重要的内容,很可能成为将来就业的敲门砖。

而程序设计综合课程设计就是积累实战经验的一个过程,虽然程序的规模并不大,但能够让我们尽早地认识软件开发的重要性和必要性,为将来的就业打下坚实的基础。

经过两个星期的上机实践学习,使我对C++语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是自己编程粗心大意,经常出错,通过学习也有所改进;

再有对C++语言的一些标准函数不太了解,还有对函数调用的正确使用不够熟悉,以及对C++语言中经常出现的错误也不了解,通过实践,使我在这几个方面的认识有所提高。

这次的课程设让我认识到很多C++的内在要素:

1.程序设计语言是程序设计的工具。

这是我通过两周课程设计深深体会的一点,并且发现如果想有效的进行程序设计,正确地应用程序设计语言表达算法,必须准确的运用程序设计语言,掌握其语法知识。

2.学习程序设计必须重视时间环节,多读程序,多编写程序,多上机实践。

这次的课程设计就使得课堂教学、式样和实践之间的关系更为紧密。

对我的学习有着很深远的影响。

3.我发现作为一个程序设计人员,需要掌握面向过程的程序设计,也要掌握面向对象的程序设计。

从前,人们通过C++语言学习面向过程的程序设计,再通过C++学习面向对象的程序设计。

其实C++并不是纯粹的面向对象的语言,它是一种混合语言。

学习C++既可以编写面向过程的程序,也可以编写面向对象的程序。

这一点是我通过可课程设计所的实践发现的。

4.深切的感受到了C++语法的复杂,内容的繁多。

发现如果对它缺乏系统的了解,将难以真正的运用,编出来的程序错误百出。

参考文献

[1]、谭浩强编著:

C++程序设计,北京:

清华大学出版社,2004

[2]、(美)戴特尔(Deitel,H.M.)等编著,张引等译:

C++大学基础教程(第五版),北京:

电子工业出版社,2006.6

[3]、夏云庆编著:

VisualC++6.0数据库高级编程,北京:

希望电子出版社2002

[4]、伍俊良编著:

VisualC++6.0课程设计与系统开发案例,北京:

清华大学出版社,2002.11

程序清单

以下是学生信息管理系统的源代码:

#include<

iostream>

fstream>

string>

iomanip>

usingnamespacestd;

#defineNULL0

intn=0;

//链表节点数

boolformExist=false;

//原有链表是否存在

structStudent

{

stringname;

stringClass;

longnum;

floatscore;

Student*next;

};

//创建链表

Student*create();

//打印信息

voidprint(Student*pt);

//删除节点

Student*del(Student*head,longnum);

//插入节点

Student*insert(Student*head,Student*stu);

//保存到文件

voidsave(Student*head,charfilename[]);

//菜单

voidmenu();

//欢迎

voidwelcome();

//按班级查询

voidinquire(Student*head,stringClass);

//按学号查询

voidinquire(Student*head,longnum);

//求平均成绩

voidaverage(Student*head);

//从文件导入

Student*import(charfilename[],Student*head);

//排序

Student*rank(Student*head);

intmain()

Student*head=NULL;

StudentnewStu;

ifstreaminfile;

charfilename[20];

charchoose;

boolquit=false;

charc;

welcome();

while(true)

{

menu();

cin>

>

choose;

switch(choose)

{

case'

1'

:

if(formExist)

{

cout<

<

"

您要创建新的链表,原有链表将丢失,是否继续?

(Y/N)"

;

cin>

c;

if(!

(c=='

y'

||c=='

Y'

))

continue;

else

{

n=0;

head=create();

system("

pause"

);

break;

}

}else

head=create();

system("

break;

}

2'

cout<

请输入文件名:

cin>

filename;

head=import(filename,head);

system("

break;

3'

\n您想删除哪个学生的信息?

输入该学生的学号:

endl;

num;

head=del(head,num);

4'

请输入新增学生的姓名、班级、学号、成绩、性别、出生年月、电话、E-mail:

newStu.name;

newStu.Class;

newStu.num;

newStu.score;

head=insert(head,&

newStu);

5'

print(head);

6'

请输入班级:

Class;

inquire(head,Class);

7'

请输入学号:

inquire(head,num);

8'

average(head);

9'

head=rank(head);

k'

save(head,filename);

c'

cls"

welcome();

q'

quit=true;

default:

输入错误!

}

if(quit)

}

//退出时提示保存

cout<

您想保存这些信息吗?

(Y/N)"

cin>

if(c=='

||c=='

cout<

save(head,filename);

return0;

}

//欢迎界面

voidwelcome()

*******************************"

endl

<

欢迎使用简易学生信息管理系统!

制作人:

齐俊时间:

2009-12-4"

endl<

voidmenu()

setiosflags(ios:

left);

\n\n您要做什么?

setw(20)<

1.创建学生信息表"

2.从文件导入信息表"

3.删除信息"

4.插入信息"

5.打印所有的信息"

6.按班级查询"

7.按学号查询"

8.求平均成绩"

9.按成绩排序"

k.保存信息表到文件"

c.清空屏幕"

q.退出"

输入您的选择:

Student*create()

boolerror=false;

formExist=true;

Student*p1,*p2,*head;

head=NULL;

p1=head;

p2=p1;

p1=newStudent;

请输入新增学生的姓名:

(输0结束)"

p1->

name;

if(p1->

name=="

0"

班级:

学号:

do

成绩:

score;

if(p1->

score<

0||p1->

score>

100)

分数错误!

请重新输入"

error=true;

else

error=false;

}while(error);

n++;

if(n==1)

head=p1;

p1->

next=NULL;

else

p2->

next=p1;

输入结束!

"

returnhead;

//输出信息

voidprint(Student*head)

Student*p=head;

if(p!

=NULL)

setw(15)<

姓名"

setw(13)<

班级"

<

setw(10)<

学号"

setw(7)<

分数"

p->

name<

Class

<

num<

p=p->

next;

}while(p!

=NULL);

合计学生"

n<

人。

else

没有信息!

//删除信息

Student*del(Student*head,longnum)

Student*p1,*p2;

if(head==NULL)

信息为空!

returnhead;

p1=p2=head;

while(p1->

num!

=num&

&

p1->

next!

p1=p1->

if(p1->

=num)

找不到该学生!

if(p1==head)

head=p1->

next=p1->

成功删除学号为"

的学生!

n--;

//插入信息

Student*insert(Student*head,Student*stu)

Student*p0,*p1;

p0=stu;

head=p0;

p0->

while(p1->

if(p0->

num==p1->

num)

学号为"

p0->

的学生已存在!

returnhead;

p1=p1->

p1->

next=p0;

成功插入信息!

voidsave(Student*head,charfilename[])

boolflag=false;

没有可以保存的信息!

return;

fstreamoutfile(filename,ios:

out);

if(!

outfile)

打开数据文件出错!

return;

if(flag)

outfile<

outfile<

\t"

Class<

'

\t'

flag=true;

outfile.close();

保存成功!

保存到"

filename<

voidinquire(Student*head,stringClass)

boolflag=true;

inttotal=0;

if(p==NULL)

do

if(p->

Class==Class)

if(flag)

班级为"

的学生有:

flag=false;

total++;

p=p->

}while(p!

已查询到"

total<

条记录。

voidinquire(Student*head,longnum)

num==num)

学号是"

的学生是:

查无此人!

//求平均值

voidaverage(Student*head)

floatsum=0;

su

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1