完整word版c++大作业学生实验报告Word文档下载推荐.docx
《完整word版c++大作业学生实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《完整word版c++大作业学生实验报告Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
(2):
具有录入信息、输出信息、查找信息、增加信息、删除信息、修改信息、排序等功能。
2.系统功能模块(要求介绍各功能)
(1)录入信息(Input):
录入学生的信息。
(2)输出信息(Print):
输出新录入的学生信息。
(3)查找信息(Find):
查找已录入的学生信息。
(4)增加信息(Add):
增加学生信息。
(5)删除信息(Remove):
在查找到所要删除的学生成绩信息后进行删除并输出删除后其余信息。
(6)修改信息(Modify):
在查到所要修改的学生信息后重新输入新的学生信息从而进行修改,然后输出修改后的所有信息。
(7)排序(Sort):
按照学生学号进行排序。
3.模块功能框架图
删除信息(Remove)
主函数(main)
修改信息(Modify)
排序(Sort)
四、系统设计与实现
1.菜单设计与实现:
菜单将所有功能划入一个简单而又醒目的功能区,再通过分行及分列从而将各功能巧妙划分开来,方便操作,也会让人觉得界面简单别致而不单调。
(界面如下)
2.功能设计与实现:
录入信息、输出信息、查找信息、增加信息、删除信息、修改信息、排序等功能。
调试过程:
1.输入信息
2.输出信息
3.查找信息
4.增加信息
5.删除信息
6.修改信息
7.排序
8.清屏
9.退出系统
五、系统有待改进的地方
1.未能实现数据的写入、读出,每次要重新输入数据,可以应用文件流来实现。
2.源程序有点复杂,可以应用链表加以简化。
六、设计心得与体会
通过这次大作业,我熟悉了类的一些应用,还熟悉了循环语句以及条件语句的组合使用。
而且通过团结合作,可以减少自己许多工作量,而这也体现了C++的优越性。
可以在同学所做的基础上来完善程序。
七、参考资料
《C++程序设计大学教程》
源程序:
//学生成绩管理系统
#include<
iostream>
string>
#include<
conio.h>
//用getch();
usingnamespacestd;
classStudent
{
private:
intCnum;
//C课程得分
intMnum;
//数学课程得分
intEnum;
//英语课程得分
intsum;
//总分
charnum[10];
charname[20];
charsex[5];
intage;
public:
staticinti;
staticintk;
staticintCount;
intx;
voidInput();
voidPrint();
voidFind();
voidAdd();
voidRemove();
voidModify();
voidSort(Student*stu);
voidShowMenu();
Student(char*name,char*num,char*sex,intCnum,intMnum,intEnum,intsum,intage);
Student();
virtual~Student();
};
intStudent:
:
k=0;
i=0;
Count=0;
Studentstu[200];
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌菜单﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
voidStudent:
ShowMenu()
cout<
<
"
〓〓〓〓〓〓〓〓〓〓☆学生成绩管理系统☆〓〓〓〓〓〓〓〓〓〓"
endl;
〓〓〓〓〓〓〓〓〓★☆1.录入学生成绩☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆2.显示学生成绩☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆3.查找学生成绩☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆4.增加学生成绩☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆5.删除学生成绩☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆6.修改学生信息☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆7.排序统计成绩☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆8.清屏☆★〓〓〓〓〓〓〓〓〓"
〓〓〓〓〓〓〓〓〓★☆0.安全退出系统☆★〓〓〓〓〓〓〓〓〓"
\n\t\t\n\t\t请选择:
;
}
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌构造函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Student:
Student()
strcpy(name,"
);
strcpy(num,"
strcpy(sex,"
Cnum=90;
Mnum=90;
Enum=90;
sum=270;
age=20;
Student(char*name1,char*num1,char*sex1,intCnum1,intMnum1,intEnum1,intsum1,intage1)
strcpy(name,name1);
strcpy(num,num1);
strcpy(sex,sex1);
Cnum=Cnum1;
Mnum=Mnum1;
Enum=Enum1;
sum=sum1;
age=age1;
Count++;
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌析构函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
~Student()
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌录入函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Input()
intn;
输入学生的人数:
cin>
>
n;
k=n;
for(i=0;
i<
i++)
{
cout<
输入第"
i+1<
个学生的学号、姓名、性别、年龄、C课程得分、数学课程得分、英语课程得分:
cin>
stu[i].num>
stu[i].name>
stu[i].sex>
stu[i].age>
stu[i].Cnum>
stu[i].Mnum>
stu[i].Enum;
stu[i].sum=stu[i].Cnum+stu[i].Mnum+stu[i].Enum;
}
录入成功!
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌输出函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Print()
{
学号\t姓名\t性别\t年龄\tc++\t高数\t英语\t总分"
k;
stu[i].num<
\t"
stu[i].name<
stu[i].sex<
stu[i].age<
stu[i].Cnum<
stu[i].Mnum<
stu[i].Enum<
stu[i].sum<
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌查找函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Find()
请输入所查学生学号、姓名"
num>
name;
if((strcmp(stu[i].num,num)==0)&
&
(strcmp(stu[i].name,name)==0))
{
x=1;
break;
}
if(x==1)
{
学号\t姓名\t性别\t年龄\tC++\t高数\t英语\t总分"
cout<
}
else
\t\t没有找到该学生!
'
\n'
输入任意字符!
继续……"
getch();
}/**/
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌增加信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Add()
intn,j,i;
for(i=k,j=0;
n+k;
i++,j++)
j+1<
k+=n;
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌删除信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Remove()
Find();
/*Studenta;
a.Find();
if(x==1)
{}*/
for(intz=i;
z<
z++)
stu[z]=stu[z+1];
删除成功!
删除后信息:
for(z=0;
k-1;
stu[z].num<
stu[z].name<
stu[z].sex<
stu[z].age<
stu[z].Cnum<
stu[z].Mnum<
stu[z].Enum<
stu[z].sum<
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌修改信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Modify()
{Studentt;
t.Find();
输入新信息:
请输入学号、姓名、性别、年龄、C++、高数、英语"
t.num>
t.name>
t.sex>
t.age;
strcpy(stu[i].name,t.name);
strcpy(stu[i].num,t.num);
strcpy(stu[i].sex,t.sex);
stu[i].age=t.age;
stu[i].Cnum=t.Cnum;
stu[i].Mnum=t.Mnum;
stu[i].Enum=t.Enum;
修改成功!
修改后信息:
for(inta=0;
a<
a++)
stu[a].num<
stu[a].name<
stu[a].sex<
stu[a].age<
stu[a].Cnum<
stu[a].Mnum<
stu[a].Enum<
stu[a].sum<
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌排序函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
Sort(Student*stu)
for(inti=1;
for(intj=0;
j<
k-i;
j++)
if(strcmp(stu[j].num,stu[j+1].num)>
0)
{
Studentt;
t=stu[j];
stu[j]=stu[j+1];
stu[j+1]=t;
}
排序后信息!
学号\t姓名\t性别\t年龄"
for(intj=0;
stu[j].num<
stu[j].name<
stu[j].sex<
stu[j].age<
stu[j].Cnum<
stu[j].Mnum<
stu[j].Enum<
stu[j].sum<
//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌主函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
intmain()
{intw;
intf;
boolquit=false;
\t\t§
§
for(f=0;
f<
3;
f++)
\t\t◎\t\t\t\t\t\t◎"
\t\t◎★★★★【欢迎进入学生成绩管理系统】★★★★◎"
\n"
Students;
按任意键开始……"
while(!
quit)
s.ShowMenu();
w;
switch(w)
case0:
quit=true;
break;
case1:
s.Input();
case2:
s.Print();
case3:
s.Find();
case4:
s.Add();
case5:
s.Remove();
case6:
s.Modify();
case7:
s.Sort(stu);
case8:
system("
cls"
default:
cout<
选择错误"
return0;