这是我的源代码,用来存储2名大学生的信息。我想得到姓名,姓氏,id和5分,每个人从输入,然后显示在输出。我在显示输出分数方面有问题。
请帮帮忙
#include <iostream>
using namespace std;
struct collegian{
char name[10];
char lastname[15];
int id;
int scores;
int roll;
};
int main(){
struct collegian s[2];
int i;
int j;
cout << "1. Enter First & Last Name\n";
cout << "2. Enter Collegian Number\n";
cout << "3. Enter Collegian Scores of 5\n";
cout << "4. App Will Show You What Received\n\n";
cout << "------------------------------------"<< endl;
for(i=0;i<2;++i)
{
s[i].roll=i+1;
cout << endl << "Collegian #" << s[i].roll << endl;
cout << "Name : ";
cin >> s[i].name;
cout << "Last Name : ";
cin >> s[i].lastname;
cout << "Collegian Number : ";
cin >> s[i].id;
for(j=0;j<5;j++)
{
cout << "Score("<<j+1<<") : ";
cin >> s[j].scores;
}
}
for(i=0;i<2;++i)
{
cout << endl << "Information of Collegian #" << i+1;
cout << endl << "Name : " << s[i].name << " ";
cout << "Last Name : " << s[i].lastname << " ";
cout << "Collegian Number : " << s[i].id << " ";
cout << endl << "Scores : ";
for(j=0;j<5;j++)
{
cout << j+1 << s[j].scores << " ";
}
cout << endl;
}
return 0;
}产出:
1. Enter First & Last Name
2. Enter Collegian Number
3. Enter Collegian Scores of 5
4. App Will Show You What Received
------------------------------------
Collegian #1
Name : XXX
Last Name : XXX
Collegian Number : 917658053
Score(1) : 15
Score(2) : 16
Score(3) : 17
Score(4) : 18
Score(5) : 19
Collegian #2
Name : ZZZ
Last Name : ZZZ
Collegian Number : 917667015
Score(1) : 17
Score(2) : 16
Score(3) : 14
Score(4) : 18
Score(5) : 19
Information of Collegian #1
Name : XXX Last Name : XXX Collegian Number : 917658053
Scores : 117 216 314 418 519 // Why ????
Information of Collegian #2
Name : ZZZ Last Name : ZZZ Collegian Number : 917667015
Scores : 117 216 314 418 519 // Why ????
--------------------------------
Process exited after 53.16 seconds with return value 0
Press any key to continue . . .发布于 2015-12-24 19:13:48
您的scores变量应该是一个数组,因为每个学生阅读5 scores。
另外,你应该像这样读它:
cin >> s[i].scores[j]; // the jth score of the ith student.
您还必须类似地更改输出语句。
https://stackoverflow.com/questions/34456954
复制相似问题