/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称:score.cpp
* 作 者:
* 完成日期: 年 月 日
* 版本号: v1.0
* 输入描述:已经在程序中初始化
* 问题描述:将学生成绩信息存储在结构体数组中,对结构体排序并输出
* 输出:按C++降序和按学号升序排序后的学生成绩单
*/
#include <iostream>
#include<fstream>
using namespace std;
struct Score
{
char num[14];
char name[14];
int cpp;
int math;
int english;
int zong;
};
Score man[100000];
void output(Score man[],int num);
int main(){
int mannum=0;
ifstream infile("man.txt",ios::in); //以输入的方式打开文件
if(!infile) //测试是否成功打开
{
cerr<<"open error!"<<endl;
exit(1);
}
while (!infile.eof())
{
infile>>man[mannum].num>>man[mannum].name>>man[mannum].cpp>>man[mannum].english>>man[mannum].math;
man[mannum].zong=man[mannum].cpp+man[mannum].english+man[mannum].math;
++mannum;
}
infile.close();
cout<<"同学的成绩单 cpp 英语 高数 "<<endl;
output(man,(mannum-1));
return 0;
}
void output(Score man[],int num){
for(int i=0;i<num;i++){
cout<<man[i].num<<" "<<man[i].name<<" ";
cout<<man[i].cpp<<" "<<man[i].english<<" "<<man[i].math;
cout<<endl;
}
}
运行结果: