/*
*Copyright (c) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称:Annpion.cpp
*作者:王耀鹏
*完成日期:2014年11月24日
*版本号:v1.0
*
*问题描述:体验文件操作
*输入描述:读入文件数据。
*程序输出:输出考试平均成绩,优秀人数,不及格人数,最高成绩,最高成绩学生的学号。
*/
#include <fstream>
#include<iostream>
#include<cstdlib>
using namespace std;
int main( )
{
int a[100000];
int n,i=0,j=0,k=0,max=-1,min=101,sum=0;
ifstream infile("english.dat",ios::in); //以输入的方式(ios::in)打开文件,注意f1.dat必须在文件夹中存在
if(!infile) //测试是否成功打开,打开失败时(如要读的数据文件不存在)退出
{
cerr<<"open error!"<<endl;
exit(1);
}
while(infile>>a[i])//当到达文件尾,则循环处理结束。类似cin>>a,只不过数据来源于打开的文件
{
if(a[i]>= 90)
j++;
if(a[i]<60)
k++;
if(a[i]>max)
max=a[i];
sum+=a[i];
i++;
}
infile.close();//读入完毕要关闭文件
cout<<"平均成绩:"<<sum/i<<endl;
cout<<"优秀人数:"<<j<<" 不及格人数:"<<k<<endl;
cout<<"最高成绩:"<<max<<" 最高成绩的学生学号为:";
for(n=0; n<i; n++)
{
if(a[n]==max)
cout<<n<<" ";
}
return 0;
}
运行结果: