input >> stut.NUM >> stut.CLASS >> stut.NAME
>> stut.CHINESE >> stut.MATH >> stut.ENGLISH; // 从文件输入语、数、外三门成绩
stut.AVERAGE = (stut.CHINESE + stut.MATH + stut.ENGLISH) / 3;
average[m] = stut.AVERAGE;
input.close();
t = m;
for (n = m + 1; n < 100; n++)
{
int change = 0;
if (average[m] < average[n])
{
change = average[m];
average[m] = average[n];
average[n] = change;
t = n;
}
}
cout << "number(" << m << ")" << ": " << stut.NUM << " "
<< stut.CLASS << " " << stut.NAME << " "
<< stut.CHINESE << " " << stut.MATH << " "
<< stut.ENGLISH << " " << average << endl;
}
return 0;
}
class Array createStuIfo()
{
// 生成学生学号和班级
num++;
sprintf(number.Num, "%d", num);
number.Class[0] = '0';
number.Class[1] = rand() % 5;// 假定只有四个班集
number.Num[3] = number.Class[1];
// 随机产生学生姓名
int x, y, z;
srand(time(NULL));
x = rand() % 25;
y = rand() % 97;
z = rand() % 97;
number.Name[0] = LastName[x];
number.Name[1] = FirstName[y];
number.Name[2] = FirstName[z];
// 随机产生三门成绩
srand(time(NULL));
number.Grade[0] = rand() % 101;
number.Grade[1] = rand() % 101;
number.Grade[2] = rand() % 101;
return number;
}
生成学生信息文件(包括学号、姓名、班级、三门课程的成绩),并从文件中读取学生信息,计算学生平均成绩,并按学生平均成绩从高到低输出学生完整信息(学生数量100人)