*/
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: fdvs.cpp
* 作 者:tianyu
* 完成日期: 2013 年 3 月 13 日
* 版本号: v1.0
*
* 输入描述:已经在程序初始化中
* 问题描述:将学生成绩信息存储在结构体数组中,对结构体并输出排序
* 输出:按C++降序和按学号升序排列后的学生成绩单
*/
#include <fstream>
#include <iostream>
using namespace std;
struct Student
{
char num[300];
char name[300];
int cpp;
int math;
int english;
int score;
};
int main()
{
struct Student student[300];
int num=0,i,j;
Student t[1];
ifstream infile("score.txt",ios::in);
if(!infile){
cout<<"open error"<<endl;
exit(1);
}
while(!infile.eof())
{
infile>>student[num].num>>student[num].name>>student[num].cpp>>student[num].math>>student[num].english;
++num;
}
infile.close();
for(i=0;i<num;i++){
student[i].score=student[i].cpp+student[i].math+student[i].english;
}
for(i=0;i<num;i++){
for(j=0;j<num-i;j++)
if(student[j].score<student[j+1].score){
t[0]=student[j];
student[j]=student[j+1];
student[j+1]=t[0];
}
}
for(i=1;i<num;++i){
cout<<student[i].num<<" "<<student[i].name<<" "<<student[i].cpp<<" "<<student[i].math<<" "<<student[i].english<<" "<<student[i].score<<endl;
}
return 0;
}
牢骚:图片找不到了。也懒得在截屏。。。就这样吧、