C语言,学生成绩排序,用VC能输出正确的结果,但学校的编译器是g++,总提 ...
发布网友
发布时间:2023-12-30 07:50
我来回答
共2个回答
热心网友
时间:2024-08-03 08:54
for(a[i][c]<a[1][i]) c = i;
//首先说说 a[2][20];
1.scanf("%d",&n);//n最好先初始化一下,输入无效值“s”,n的值乱七八糟的。
2.若n的值超过20,数组是不是越界了,可以这样 n = n>20?20:n;
//其次说说if(a[i][c]<a[1][i]) c = i;
若a[1][0] < a[1][1] c = 1;
若a[1][0] < a[1][2] c = 2;
..........................;
若a[1][0] < a[1][arraysize] c = arraysize;
for(a[i][c]<a[1][i]) c = i;//不明白要做什么。
//最后可以定义一个结构体。
struct _student
{
int stu_no;
int stu_grade;
};
#define ARRAY_SIZE 20;
_student stu[ARRAY_SIZE];
信息:给每个结构体赋给学生成绩和序号,
排序:小量数据可以用冒泡排序法排序,
输出: 把结构体数据输出就完成这个功能了。
vc6.0的语法没有gcc严谨
建议同学遵守下变量的命名规则吧。
个人觉得,一个二维数组信息放序号跟成绩,这个真是很奇怪的事情。
代码我没有怎么看,看不懂 莫怪。
上面是见到一些错误和给出的建议。希望对你有帮助。
热心网友
时间:2024-08-03 08:49
自己看。都有