求高手用C++编写下面程序
输入一批学生某门课程考试的各题的分数,计算每个人的总分,统计各分数段0~49, 50~59, 60~69,70~79, 80~89, 90~100的人数及占总人数的百分比。要求输入:课程名称,考试日期,学生班号,学生姓名,学号,课程考试得分。
输出要求:课程名称,考试日期,学生班号;各分数段的人数及百分比。
答案:/*输入一批学生某门课程考试的各题的分数,计算每个人的总分,统计各分数段0~49,
50~59, 60~69,70~79, 80~89, 90~100的人数及占总人数的百分比。
要求输入:课程名称,考试日期,学生班号,学生姓名,学号,课程考试得分。
输出要求:课程名称,考试日期,学生班号;各分数段的人数及百分比。 */
#include <iostream>
#include <string>
using namespace std;class Stu
{
public:
Stu(){}
~Stu(){}
string ClassName;
string TestDate;
string ClassNo;
string name;
string no;
double T[10];//10题,题数自己随便定void input()//输入成绩
{
cout<<"输入课程名称:";
cin>>ClassName;
cout<<"输入考试日期:";
cin>>TestDate;
cout<<"输入学生班号:";
cin>>ClassNo;
cout<<"输入学生姓名:";
cin>>name;
cout<<"输入学生学号:";
cin>>no;
for(int i=0;i<10;i++)
{
cout<<"输入学生该课程第"<<i+1<<"题成绩:";
cin>>T[i];
}
cout<<endl;
}
double getZF()//总分
{
double sum=0;
for(int i=0;i<10;i++)
{
sum+=T[i];
}
return sum;
}
};class Info
{
public:
Info()
{
for(int i=0;i<6;i++)
{
n[i]=0;
}
N=0;
}
string classname;
string testdate;
string classno;
int n[6];
int N;
};void main()
{
const int studentNum=3;//学生总人数,随便定
Stu stu[studentNum];
int i,j=1;
Info info[studentNum];
for(i=0;i<studentNum;i++)//输入
{
stu[i].input ();
}
info[0].classname =stu[0].ClassName ;
info[0].testdate =stu[0].TestDate;
info[0].classno =stu[0].ClassNo;for(i=0;i<studentNum;i++)//输出
{
cout<<endl;
for(int k=0;k<j;k++)
{
if( stu[i].ClassName ==info[k].classname &&
stu[i].TestDate ==info[k].testdate &&
stu[i].ClassNo ==info[k].classno )
{
double ZF=stu[i].getZF();
if(ZF<=49&&ZF>=0)
info[k].n[0]++;
else if(ZF<=59&&ZF>=50)
info[k].n[1]++;
else if(ZF<=69&&ZF>=60)
info[k].n[2]++;
else if(ZF<=79&&ZF>=70)
info[k].n[3]++;
else if(ZF<=89&&ZF>=80)
info[k].n[4]++;
else if(ZF<=100&&ZF>=90)
info[k].n[5]++;
info[k].N++;
}
else
{
j++;
info[j-1].classname =stu[i].ClassName ;
info[j-1].testdate =stu[i].TestDate ;
info[j-1].classno =stu[i].ClassNo ;
}
}
}
for(i=0;i<j;i++)
{
cout<<endl;
cout<<"课程名称:"<<info[i].classname<<endl;
cout<<"考试日期:"<<info[i].testdate <<endl;
cout<<"学生班号:"<<info[i].classno <<endl;
cout<<"0~49分人数:"<<info[i].n[0]<<endl;
cout<<"50~59分人数:"<<info[i].n[1]<<endl;
cout<<"60~69分人数:"<<info[i].n[2]<<endl;
cout<<"70~79分人数:"<<info[i].n[3]<<endl;
cout<<"80~89分人数:"<<info[i].n[4]<<endl;
cout<<"90~100分人数:"<<info[i].n[5]<<endl;
cout<<endl;
cout<<"0~49分人数占总人数百分比:"<<info[i].n[0]*100/info[i].N<<"%"<<endl;
cout<<"50~59分人数占总人数百分比:"<<info[i].n[1]*100/info[i].N<<"%"<<endl;
cout<<"60~69分人数占总人数百分比:"<<info[i].n[2]*100/info[i].N<<"%"<<endl;
cout<<"70~79分人数占总人数百分比:"<<info[i].n[3]*100/info[i].N<<"%"<<endl;
cout<<"80~89分人数占总人数百分比:"<<info[i].n[4]*100/info[i].N<<"%"<<endl;
cout<<"90~100分人数占总人数百分比:"<<info[i].n[5]*100/info[i].N<<"%"<<endl;}
system("pause");
}
上一个:C++构造函数怎么改啊?
下一个:c++中字符串能简单相加吗?