C++实习报告.docx
- 文档编号:7583971
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:19
- 大小:368.86KB
C++实习报告.docx
《C++实习报告.docx》由会员分享,可在线阅读,更多相关《C++实习报告.docx(19页珍藏版)》请在冰豆网上搜索。
C++实习报告
计算机高级语言(C++)实习报告
题目
学生姓名:
班号:
学号:
1206
指导老师:
马丽
中国地质大学(武汉)机械与电子信息学院
2011年12月
成绩管理系统
1、设计任务与要求
输入数据包括:
学生姓名,学号,科目名称,科目成绩(至少列出2门课程,至少10个学生),编写一个初始化函数完成初始数据的输入。
注:
采用键盘输入的方式,并将输入数据保存到文件中。
2、算法设计
1.设计思想:
a.能对学生各科成绩进行录入。
b.能对学生的成绩按学号,姓名,进行查询。
c.能输出学生的所有数据。
d.能进行成绩统计。
e.能输出每个学生的平均成绩。
f.能统计每科成绩不及格的学生个数。
g.能进行总分查询排名。
通过定义一个类来定义数据录入的函数,并且作一个文本文档在文件夹中用于显示所录入的数据(如学生的姓名、学号、数学成绩、C++成绩、英语成绩)。
2.设计表示:
a.界面设计
程序运行后会出现一个简捷的窗口,便于用户查询数据。
b.功能设计与实现
通过主窗体调用其他窗体,具体实现可以参照系统分析相关内容。
应用系统主控界面包括记录编辑和记录查询等功能模块。
记录编辑功能完成学生成绩记录编辑和记录查询功能。
记录查询功能可以对数据各分类的记录进行查询。
3.详细设计表示
设计该程序的主要框架为:
3、调试报告
每一个case都能执行,但是有很多的地方都不够完善,例如:
在总成绩排序中,只能输出总成绩,不能单独的输出学生的相应的信息;每次进行别的操作之前都要在进行一次数据的录入,不能直接对原有的文件进行读取。
4、用户手册
执行程序后会出现以下操作选择:
先进行学生信息的录入,即在键盘上输入数字1,会有:
输入姓名小a,然后会要求输入其学号:
接着会要求输入其数学成绩,如85;C++成绩,如88;英语成绩,如89,即:
如果在键盘上输入y,则继续上面的步骤,进行学生信息的录入;如果在键盘上输入n,则返回到上面的操作选择中。
在输入了10个学生的信息后
然后返回到操作选择中,可以选择对学生信息的查询、成绩统计和按总分排名等功能中。
如以下:
5、附录(源代码)
#include
#include
#include
#include
#include
usingnamespacestd;
classTstu//通过定义一个类来定义数据录入的函数
{
charname[20];
intnumber;
floatmath,cpp,english,average,sum;
public:
Tstu()
{};
Tstu(charn[20],intnum,floatma,floatcj,floateng);
floatgetsum();//得到总分的函数
floatgetaver();//得到平均分的函数
friendvoidmain();//将主函数定义为友元函数,方便访问类中的成员
};
Tstu:
:
Tstu(charn[20],intnum,floatma,floatcj,floateng)
{
strcpy(name,n);//得到姓名
number=num;//得到学号
math=ma;//得到数学成绩
cpp=cj;//得到c++成绩
english=eng;//得到英语成绩
}
floatTstu:
:
getsum()//得到总分的函数
{
sum=cpp+english+math;
returnsum;
}
floatTstu:
:
getaver()//得到平均分的函数
{
average=getsum()/3;
returnaverage;
}
voidmain()
{
cout<<"*****************欢迎来到学生成绩查询系统*****************"< cout<<"请选择您需要的操作! "< cout<<"操作: "< cout<<" (1)数据录入"< cout<<"查询: "< cout<<" (2)按学号查询"< cout<<"(3)按姓名查询"< cout<<"(4)输出所有学生的数据"< cout<<"成绩统计: "< cout<<"(5)每个学生的平均成绩"< cout<<"(6)各科不及格人数"< cout<<"排名: "< cout<<"(7)按总分查询排名"< cout<<"(8)退出"< cout<<"选择相关操作请输入相对的括号里的阿拉伯数字及字母! "< intp=0;//全局变量,用于选择菜单时的输入 charw;//全局变量,用于在大项中选择是否继续操作 Tstu*s[100];//类定义的指针将所录入的数据按类中的形式分别存储 ofstream*file[100]; inti=0;//全局变量,用于做每个录入数据的下标 intj=0; intchris1=0;//用于判断do—while语句 do//判断输入是否正确 { cin>>p; if((p>=1&&p<=11)) chris1=1; else cout<<"指令错误! 请重新输入: "< }while(chris1==0); do{ switch(p) { case1: //数据的录入 { charc;//用于在小项中选择是否继续操作 charname[20]; intnumber; floatmath,cpp,english; do{ cout<<"请输入姓名: "< cin>>name; cout<<"请输入学号: "< cin>>number; cout<<"请输入数学成绩: "< cin>>math; cout<<"请输入C++成绩: "< cin>>cpp; cout<<"请输入英语成绩: "< cin>>english; fstreamoutfile,infile;//作一个文本文档在文件夹中用于显示所录入的数据 outfile.open("f1.txt",ios: : out|ios: : app); if(! file) {cout<<"f1.txtcannotopen.\n"; return; } outfile< "< "<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 实习 报告