第十三周项目6——实战(从文件中输出最大值及对应学号)

来源:互联网 发布:java实现excel导出 编辑:程序博客网 时间:2024/06/05 15:05
/*
 *Copyright(c)2014,烟台大学计算机学院
 *All rights reserved.
 *文件名称:test.cpp
 *作者:李晓凯
 *完成日期:2014年 12月 2日
 *版本号:v1.0
 *
 *问题描述:处理学生成绩输出最高成绩及对应学号
 *程序输入:从文件中读取

 *程序输出:最高成绩及对应的学号

 */

#include<fstream>    //处理文件要包括头文件fstream#include<iostream>#include<cstdlib>   //调用exit(1)需要包含cstdlibusing namespace std;int main( ){    int a[10000],i=0,max=-1;    //打开文件,要使用文件必须正确打开,对输出文件,注意写ios::out    // f1.dat是要“写”的文件名,你可以起你喜欢的名字,如myfile.txt    ifstream infile("english.dat",ios::in);    if(!infile)    //测试文件打开操作是否成功    {        cerr<<"open error!"<<endl;        exit(1);//打开不成功,则提示后退出。    }    //用ios::out方式成功打开文件后,可以如下所示将数据保存到文件中    //操作中,要用打开的文件对象名(outfile),而不是用文件名(此例f1.dat)    //本例将键盘输入的10个整数“写”到文件中。    while(infile>>a[i])    {        if(a[i]>max)            max=a[i];        i++;    }    infile.close();    cout<<"最高成绩为:"<<max<<endl;    cout<<"获最高成绩的同学的学号为:";    for(int j=0; j<i; j++)        if(a[j]==max)            cout<<j<<"  ";    return 0;}


学习总结:这个类似于前面的一个程序,只不过是改为了 从文件中读取,所以,只要会了从文件中读取这一步就很简单了,不过一定要记住加上“infile.close();”否则,文件的数据就会丢失,这样以后就不能运行了。

0 0
原创粉丝点击