编一个c++程序,输入五个学生的学号、姓名、5门课的成绩,按平均分的高低排序输出 用c++编写一个学生类。输出每个学生的姓名、学号、成绩

   www.gaoxiao88.net
#include <iostream>
using namespace std;
struct stu{
long no;
char name[9];
int score1;
int score2;
int score3;
int score4;
int score5;
double ave;
};
stu student[5];
void main()
{
cout<<"请输入各学生的信息"<<endl;
/*long no;
char name[5];
int score1;
int score2;
int score3;
int score4;
int score5;
float ave[5];*/
int j=1; //用来记录第几个学生
for(int i=0;i<5;i++)
{
int sum;
printf("第%d个:\n",j++);
cout<<"学号"; cin>>student[i].no;
cout<<"名字"; cin>>student[i].name;
cout<<"第一门"; cin>>student[i].score1;
cout<<"第二门"; cin>>student[i].score2;
cout<<"第三门"; cin>>student[i].score3;
cout<<"第四门"; cin>>student[i].score4;
cout<<"第五门"; cin>>student[i].score5;

sum=student[i].score1+student[i].score2+student[i].score3+student[i].score4+student[i].score5;
student[i].ave=sum/5.0;
}

double temp;
for(int b=0;b<5;b++)
{
if(student[b].ave>student[b+1].ave)
{
temp=student[b];
student[b]=student[b+1];
student[b+1]=temp;
}
}
for(int k=0;k<5;k++)
{
cout<<student[k].no<<" "<<student[k].name<<" "<<student[k].ave<<endl;
}

}

你的很乱,我帮你分析下:
结构体,五个成绩的定义不是那样,你那样就是一个学生的一门成绩有五个了,只有名字用数组,还有,结构体定义了成员,主函数就不须定义了。有个经验之谈,有实型数十最好用double,因为float没他精确。还有循环多了一个,输出了五次。还有问题发邮件问我,302527811@qq.com

ave[i]=sum/5;
这里用5.0,避免精度损失。

你这里只输入数据到score,no等几个数组了5组数据。 后面student完全没有赋值。其中name只能输入一个字符!很乱。不知道你这怎么定义的。每个student 5组数据 ? 那5个student 25组数据?
如果只有5组数据,name只有5个, 那么student结构内除了name都不要用数组。 然后cin那部分改用student数组。

有10个学生,每个学生的数据包括:学号、姓名、三门课的成绩。写程序,要求scanf("%s",a[i].name); printf("请分别输入十行成绩(每行五列)\\n,ZYFaph

编一个c++程序,输入五个学生的学号、姓名、5门课的成绩输出总分最高学生的总分

#include

using namespace std;

struct student{
string num;
string name;
int grade[5];
};

int main()
{
student myStudents[5];
int totalGrade[5] = {0};
for(int i = 0; i < 5; i ++)
{
cin >> mystudent[i].num >> mystudent[i].name;
for(int j = 0; j < 5; j ++)
cin >> mystudent[i].grade[j];
}
for(int i = 0; i < 5; i ++)
{
int max = 0;
for(int j = 0; j < 5; j ++)
totalGrade[i] += mystudent[i].grade[j];
if(totalGrade[i] > max)
max = totalGrade[i];
}
cout << max << endl;
return 0;
}
// 我是直接在网页上打的。如果有问题请追问。

#include#includeusing namespace std;class Student{public: Student(string s,int a,int b):name(s),id(a),score(b){} void display();private: string name; int id; int score;};void Student::display(){ cout << "姓名:" << ends << name << endl; cout << "学号:" << ends << id << endl; cout << "成绩:" << ends << score << endl;}int main(){ Student stu("小明", 19, 97); stu.display(); system("pause"); return 0;}

相关参考:

编一个c++程序,输入五个学生的学号、姓名、5门课的成绩,按平均分的高...
void main(){ cout<<"请输入各学生的信息"<<endl;\/*long no;char name[5];int score1;int score2;int score3;int score4;int score5;float ave[5];*\/ int j=1; \/\/用来记录第几个学生 for(int i=0;i<5;i++){ int sum;printf("第%d个:\\n",j++);cout<<"学号";...

编一个c++程序,输入五个学生的学号、姓名、5门课的成绩输出总分最高学...
int totalGrade[5] = {0};for(int i = 0; i < 5; i ++){ cin >> mystudent[i].num >> mystudent[i].name;for(int j = 0; j < 5; j ++)cin >> mystudent[i].grade[j];} for(int i = 0; i < 5; i ++){ int max = 0;for(int j = 0; j < 5; j ++)...

c++从键盘输入以下5个学生的学号、姓名,以及数学、语文和英语成绩,写 ...
if(!out){cout<<"open output file error"<<endl;return 0;} cout<<"输入5个学生记录(学号、姓名、数学、语文、英语):"<<endl;for(i=0;i<5;i++){cin>>stu[i].no>>stu[i].name>> stu[i].s_m>>stu[i].s_cn>>stu[i].s_en;out<<stu[i].no<<" "<<stu[i].name<<"...

c++编程 实现输入5个学生的学号、计算机的期中和期末成绩,然后计算
cout<<"请输入学号 期中成绩 期末成绩:"<<endl;for(i=0;i<5;i++)cin>>stu[i].num>>stu[i].mid>>stu[i].end;for(i=0;i<5;i++)stu[i].avg = (stu[i].mid+stu[i].end)\/2;for(i=0;i<5;i++)cout<<stu[i].num<<"\\t"<<stu[i].mid<<"\\t"<<stu[i].end<<"...

...学生,每个学生的数据包括学号姓名总成绩,从键盘输入五个学生的...
a[6];int main(){ for(int i=1;i<=5;++i)cin>>a[i].rank>>a[i].name>>a[i].data;for(int i=1;i<=5;++i)cout<<a[i].rank<<" "<<a[i].name<<" "<<a[i].data<<endl;return 0;} 如果需要按学号来排序的话就用algorithm库的sort,然后自己写一个cmp就可以了 ...

C++,建立一个对象数组,内放5个学生的数据(学号成绩)我的程序错在哪里...
构造函数不对,是两个参数(int,int)。所有你得:p=new Student(1,1)[5];否则自己加一个构造函数 Student::Student();然后再加一个输入的函数input(...);才能p=new Student()[5];(p+1).input(...);

急救!用C++建立结构体,输入5个学生的学号……
int max=0; \/\/这个是所有学生平均分的最大值 int s;struct stu \/\/定义一个学生信息的结构体 { char name[20];int num;int c1;int c2;int c3;int all;int avg;}stu1[N];void main(){ input(); \/\/输入函数 average(); \/\/求平均值函数 maximum(); \/\/找最大值函数 printf(" N...

...包括学号,性别,数学英语4种信息,输入5个学生信息,分别输出数学_百度...
student_info(struct Student s) { string str[] = {"男", "女"}; cout << "学号:" << s.student_id << endl; cout << "性别:" << str[s.gender] << endl; cout << "英语:" << s.score_english << endl; cout << "数学:" << s.score_...

c++,现有一个小班5个学生的信息,按行读入,然后计算学生的总成绩,输出...
c++实现学生信息输入及成绩输出如下:include<iostream> include<string> using namespace std;class Student { unsigned no;string name;float score[3];float total;public:void GetData(){ cin >> no>>name>>score[0]>>score[1]>>score[2];total = scor[0]+score[1]+score[2];} void ...

...包括学号,姓名,四门课的成绩,从键盘输入5个学生数据
cout << "input 学号、姓名、四门课的成绩"<<endl;cin >> sa[i].num >> sa[i].name >> sa[i].scorea[0] >> sa[i].scorea[1] >> sa[i].scorea[2] >> sa[i].scorea[3];} for(int i=0;i<5;i++){ cout << "out 学号、姓名、四门课的成绩.平均成绩:"<<endl;...

相关评论

  • 景昏5662: 一个c++程序编写输入5个小写字母,将其译成密码.密码规律是:用原来的字母后面第4个字母代替原来的字母.例如,输入“ahoux”,'a' - >'b' - >'c' - >... - 作业帮
    15342139277:[答案] #include int main() { char a[100],*p; int n,i; gets(a); p=a; n=0; while(*p) { n++; p++; } for(i=0;i=97&&a[i]=119&&a[i]

  • 景昏5662: C++编写程序,从键盘输入5个字母,转换成大写并输出 -
    15342139277: #include<stdio.h> #include<iostream> void main() { char c1,c2,c3,c4,c5; // 定义字符 cout<<"请输入5个小写字母,用空格分隔"<<endle; cint>>c1>>c2>>c3>>c4>>c5; cout<<“您输入的5个小心字母转换成大写之后分别是:”<<c1-32<<c2-32<<c3-32<<c4-32<<c5-32<<endle; } 重点就是大小写的ASCII码值差32

  • 相关话题

    ap在线精英在线最新简短笑话,好笑的段子,搞笑句子,男女朋友校园冷笑话,搞笑歌词对白台词,夫妻搞笑对话,手机流行笑话,逗人笑的动物经典笑话,最新幽默搞笑图文,好笑的视频分享给朋友
    若有事情,请联系电邮
    © <搞笑吧