《C++程序设计》教学实习报告09信息.docx

上传人:b****7 文档编号:16556003 上传时间:2023-07-14 格式:DOCX 页数:27 大小:150.15KB
下载 相关 举报
《C++程序设计》教学实习报告09信息.docx_第1页
第1页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第2页
第2页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第3页
第3页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第4页
第4页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第5页
第5页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第6页
第6页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第7页
第7页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第8页
第8页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第9页
第9页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第10页
第10页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第11页
第11页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第12页
第12页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第13页
第13页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第14页
第14页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第15页
第15页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第16页
第16页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第17页
第17页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第18页
第18页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第19页
第19页 / 共27页
《C++程序设计》教学实习报告09信息.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《C++程序设计》教学实习报告09信息.docx

《《C++程序设计》教学实习报告09信息.docx》由会员分享,可在线阅读,更多相关《《C++程序设计》教学实习报告09信息.docx(27页珍藏版)》请在冰点文库上搜索。

《C++程序设计》教学实习报告09信息.docx

《C++程序设计》教学实习报告09信息

 

天津农学院

计算机科学与信息工程系

 

《C++程序设计》教学实习报告

 

实习名称:

C++程序设计

专业:

信息管理与信息系统

班级:

2009级班

学号:

姓名:

指导教师:

赵光煜

成绩:

2010年7月

 

目录

1教学实习的内容1

2教学实习的目的1

3教学实习设计介绍1

4总结与体会25

1教学实习的内容

使用C++开发环境结合所学知识进行C++程序的设计、编辑、编译、调试、运行、测试,完成实习报告。

(此段自行扩展)

2教学实习的目的

完成《C++程序设计》课程学习后,通过本次教学实习,对所学专业知识进一步消化、理解并掌握,锻炼和提高综合运用所学知识解决实际问题的能力。

(此段自行扩展)

3教学实习设计介绍

3.1学生成绩管理系统功能介绍

本系统是一个学生成绩管理系统,输入数据类型主要是char、int、float等数据类型,输入内容包括:

班级、学号、姓名、数据库、C++程序设计、高等数学、大学英语、离散数学、大学体育、经济学原理等数据。

用户在输入学生数据时要保证输入数据格式的正确性,系统不会自动检测输入的数据是否正确,可用。

输出形式与输入形式类似,根据需要可以选择显示输入的各项内容,还可以选择显示计算好平均分后并排序后的记录,显示内容包括:

班级、学号、姓名、平均分等数据。

用户运行程序后进入系统主界面,在主界面用户可以输入所有学生的数据并保存到文件中,也可以读取文件中已有的学生数据。

用户在保存数据的时候,如果保存位置没有文件则自动新建一个文件进行保存。

本系统同时只能对一个数据文件进行相关操作,不能同时打开多个数据文件,其类似于单用户操作系统。

当用户读取学生数据后可对其进行显示,插入,删除,修改,排序,计算平均分等相关操作。

用户在操作过程中可随时对当前文件进行保存到文件操作,以防止修改的数据丢失。

3.2学生成绩管理系统算法描述

1)主函数main():

定义学生结构体数组,调用录入、统计等函数对成绩表进行处理;

2)录入函数Input():

输入班级到经济成绩;

3)统计函数Statistic():

计算平均成绩;

4)查询函数Lookup():

查询指定学号学生成绩记录;

5)修改函数Modify():

修改指定学号学生成绩记录;

6)删除函数Delete():

删除指定学号学生记录;

7)输出函数Output():

输出班级所有学生成绩记录;

8)排序函数Sort():

按平均分对学生成绩记录项进行降序排序;

9)插入函数Insert():

按平均分顺序插入新记录。

3.3源代码

#include

#include

#include

#include

#include

#include

usingnamespacestd;

classStu

{

public:

friendvoidInput(Stustud[]);

friendvoidStatistic(Stustud[]);

friendvoidLookup(Stustud[]);

friendvoidModify(Stustud[]);

friendvoidDelete(Stustud[]);

friendvoidOutput(Stustud[]);

friendvoidSort(Stustud[]);

friendvoidInsert(Stustud[]);

friendvoidWrite(Stustud[],intn);

friendintRead(Stustud[]);

friendvoidwelcome();

private:

charclass_0[20];

intnum;

charname[8];

floatelec;

floatc_program;

floatmedia;

floatenglish;

floatmath;

floatsport;

floatpolity;

floataverage;

intorder;

}stud[100];

voidwelcome()

{

charname[4],code[7];

cout<

cout<

cout<<"▲****************************************▲\n";

cout<<"欢迎使用本学生成绩管理系统!

\n";

cout<<"▲****************************************▲\n";

cout<<"作者:

魏青"<

cout<

cout<<"请输入用户名和密码:

\n";

cout<<"帐号:

";

cin>>name;

cout<<"密码:

";

cin>>code;

while((strcmp(name,"1111")!

=0)||(strcmp(code,"0000")!

=0))

{

cout<<"用户名或密码输入有误,请重新输入!

\n";

cin>>name>>code;

}

cout<

cout<

cout<<"▲***************************▲\n";

cout<<"欢迎使用学生成绩管理系统!

\n";

cout<<"▲***************************▲\n";

cout<

}

voidWrite(Stustud[],intn)

{

fstreammyFile;

myFile.open("student.dat",ios:

:

out|ios:

:

binary);

if(!

myFile)

{

cout<<"student.datcan'topen!

"<

abort();

}

intcount=n;

myFile<

for(inti=0;i<=count;i++)

{

myFile<

<<""<

}

myFile.close();

}

intRead(Stustud[])

{

fstreammyFile;

myFile.open("student.dat",ios:

:

in|ios:

:

binary);

if(!

myFile)

{

cout<<"student.datcan'topen!

"<

abort();

}

intcount;

myFile.seekg(0);

myFile>>count;

for(inti=0;i<=count;i++)

{

myFile>>stud[i].class_0>>stud[i].num>>stud[i].name>>stud[i].elec>>stud[i].c_program>>stud[i].media>>stud[i].english>>stud[i].math>>stud[i].sport>>stud[i].polity>>stud[i].average;

}

myFile.close();

returncount;

}

voidInput(Stustud[])

{

system("cls");

inti=0;

intflag;

charsign;

cout<>请输入学生成绩<<===="<

while(sign!

='n'&&sign!

='N')

{

cout<<"班级:

";

cin>>stud[i].class_0;

loop:

cout<<"学号:

";

cin>>stud[i].num;

intc=0;

while(c

{

c++;

if(stud[i].num==stud[i-c].num)

{

cout<<"你输入的学号已经存在!

请重新输入。

"<

gotoloop;

}

}

cout<<"姓名:

";

cin>>stud[i].name;

do{

flag=0;

cout<<"数据库成绩:

";

cin>>stud[i].elec;

if(stud[i].elec>100||stud[i].elec<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

do{

flag=0;

cout<<"C++程序设计成绩:

";

cin>>stud[i].c_program;

if(stud[i].c_program>100||stud[i].c_program<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

do{

flag=0;

cout<<"高等数学成绩:

";

cin>>stud[i].media;

if(stud[i].media>100||stud[i].media<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

do{

flag=0;

cout<<"大学英语成绩:

";

cin>>stud[i].english;

if(stud[i].english>100||stud[i].english<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

do{

flag=0;

cout<<"离散数学成绩:

";

cin>>stud[i].math;

if(stud[i].math>100||stud[i].math<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

do{

flag=0;

cout<<"大学体育成绩:

";

cin>>stud[i].sport;

if(stud[i].sport>100||stud[i].sport<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

do{

flag=0;

cout<<"经济学原理成绩:

";

cin>>stud[i].polity;

if(stud[i].polity>100||stud[i].polity<1)

cout<<"对不起,请输入1-100之间的数字!

!

\n";

else

flag=1;

}while(flag==0);

stud[i].average=(stud[i].elec+stud[i].c_program+stud[i].media+stud[i].english+stud[i].math+stud[i].sport+stud[i].polity)/7;

cout<<"平均分为:

"<

cout<<"====>提示:

是否继续写入学生成绩?

(Y/N)";

cin>>sign;

i++;

}

Write(stud,i);

}

voidStatistic(Stustud[])

{

system("cls");

intn=Read(stud);

cout<>输出学生统计数据<<===="<

cout<<"班级"<<""<<"学号"<<""<<"姓名"<<""<<"平均分"<

for(inti=0;i

cout<

system("pause");

}

voidLookup(Stustud[])

{

system("cls");

intn=Read(stud);

ints;

inti=0;

cout<>查找学生成绩<<===="<

cout<<"请输入需要查找学生的学号:

"<

cin>>s;

while((stud[i].num-s)!

=0&&i

if(i==n)

{

cout<<"=====>提示:

对不起,无法找到该学生的信息!

"<

}

else

{

cout<<"---------------------------"<

cout<<"班级:

"<

cout<<"学号:

"<

cout<<"姓名:

"<

cout<<"数据库:

"<

cout<<"C++程序设计:

"<

cout<<"高等数学:

"<

cout<<"大学英语:

"<

cout<<"离散数学:

"<

cout<<"大学体育:

"<

cout<<"经济学原理:

"<

cout<<"平均分:

"<

}

}

voidModify(Stustud[])

{

system("cls");

intn=Read(stud);

ints;

inti=0;

cout<>修改学生成绩<<===="<

cout<<"请输入需要修改成绩学生的学号:

"<

cin>>s;

while((stud[i].num-s)!

=0&&i

if(i==n)

{

cout<<"=====>提示:

对不起,无该学生的成绩……"<

}

else

{

cout<<"----------该学生的信息----------"<

cout<<"班级"<<""<<"学号"<<""<<"姓名"<<""<<"数据"<<""<<"c++"<<""<<"高数"<<""<<"英语"<<""<<"离散"<<""<<"体育"<<""<<"经济"<<""<<"平均分"<

cout<<"---------------------------------"<

cout<

cout<<"请重新输入该学生的信息"<

cout<<"班级:

"<

cin>>stud[i].class_0;

cout<<"学号:

"<

cin>>stud[i].num;

cout<<"姓名:

"<

cin>>stud[i].name;

cout<<"数据库成绩:

"<

cin>>stud[i].elec;

cout<<"C++程序设计成绩:

"<

cin>>stud[i].c_program;

cout<<"高等数学成绩:

"<

cin>>stud[i].media;

cout<<"大学英语成绩:

"<

cin>>stud[i].english;

cout<<"离散数学成绩:

"<

cin>>stud[i].math;

cout<<"大学体育成绩:

"<

cin>>stud[i].sport;

cout<<"经济学原理成绩:

"<

cin>>stud[i].polity;

stud[i].average=(stud[i].elec+stud[i].c_program+stud[i].media+stud[i].english+stud[i].math+stud[i].sport+stud[i].polity)/7;

cout<<"平均分为:

"<

charc;

cout<<"是否保存数据?

(y/n)"<

cin>>c;

if(c!

='n'&&c!

='N')

Write(stud,n);

}

}

voidDelete(Stustud[])

{

system("cls");

intn=Read(stud);

ints;

inti=0,j;

cout<>删除学生成绩<<===="<

cout<<"请输入需要删除学生的学号:

"<

cin>>s;

while((stud[i].num-s)!

=0&&i

if(i==n)

{

cout<<"====>提示:

对不起,无法找到该学生……"<

}

else

{

for(j=i;j

{

strcpy(stud[j].class_0,stud[j+1].class_0);

stud[j].num=stud[j+1].num;

strcpy(stud[j].name,stud[j+1].name);

stud[j].elec=stud[j+1].elec;

stud[j].c_program=stud[j+1].c_program;

stud[j].media=stud[j+1].media;

stud[j].english=stud[j+1].english;

stud[j].math=stud[j+1].math;

stud[j].sport=stud[j+1].sport;

stud[j].polity=stud[j+1].polity;

stud[j].average=stud[j+1].average;

}

cout<<"====>提示:

已成功删除!

"<

}

Write(stud,n-1);

}

voidInsert(Stustud[])

{

system("cls");

intn=Read(stud);

chars;

cout<>增加学生成绩<<===="<

while(s!

='n'&&s!

='N')

{

cout<<"班级:

"<

cin>>stud[n].class_0;

cout<<"学号:

";

cin>>stud[n].num;

cout<<"姓名:

";

cin>>stud[n].name;

cout<<"数据库成绩:

";

cin>>stud[n].elec;

cout<<"C++程序设计成绩:

";

cin>>stud[n].c_program;

cout<<"高等数学成绩:

";

cin>>stud[n].media;

cout<<"大学英语成绩:

";

cin>>stud[n].english;

cout<<"离散数学成绩:

";

cin>>stud[n].math;

cout<<"大学体育成绩:

";

cin>>stud[n].sport;

cout<<"经济学原理成绩:

";

cin>>stud[n].polity;

stud[n].average=(stud[n].elec+stud[n].c_program+stud[n].media+stud[n].english+stud[n].math+stud[n].sport+stud[n].polity)/7;

cout<<"平均分"<

n++;

cout<<"=====>提示:

插入成功!

"<

cout<<"是否继续输入(y/n)"<

cin>>s;

}

Write(stud,n);

}

voidSort(Stustud[])

{

system("cls");

inti,j,k;

floats;

chart[20];

cout<>降序排序成绩<<===="<

intn=Read(stud);

for(i=0;i

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

当前位置:首页 > 经管营销

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2