初学者,因为无法独自解决此问题,所以想请教一下各位大大
之前有看过论坛里面一些大大写的此题的代码,但是最后的cout语句基本是一样的
所以不太明白格式错误是什么问题导致的...
代码如下(C++语言,提交时编译器为C++(g++)),提交时没有加入注释内容
#include<string>
#include<iostream>
using namespace std;
int main(void)
{
int n, i, j, max,min;
string s[10000];//因为题目只提及n>0
string num[10000];//所以声明了较大的数组
int grade[10000];
cin >> n;//输入学生数量
for (i = 1; i <= n; i++) {
cin >> s[i] >> num[i] >> grade[i];
cout << endl;
}//依次输入学生信息
max = min = 1;
for (j = 1; j <= n; j++) {
if (grade[j] > grade[max])
max = j;
if (grade[j] < grade[min])
min = j;
}//比较成绩的高低
cout << s[max] << " " << num[max] << endl;//最高
cout << s[min] << " " << num[min] << endl;//最低
return 0;
}
在上面的代码里我并没有使用结构体,这道题是一定要用结构体的吗?
另外还看到有的大大没有在输出最低成绩的行末尾加endl,我尝试之后也是一样的格式错误结果...
orz
参考过其他大大的文章:
PAT 1004成绩排序(解决部分正确的原因)-作者linluoluo
PAT 1004 成绩排名 (20 分)-fyy_lufan(主要还是看了这位大大的文章才考虑不用结构体)
提前感谢各位大大的解答!