第13周项目6 例1.5 工人工资

来源:互联网 发布:黑帽seo技术网邀请码 编辑:程序博客网 时间:2024/04/20 09:18
/**Copyright (c)2014,烟台大学计算机与控制工程学院*All rights reserved.*文件名称:gcd.cpp*作    者:惠睿*完成日期:2014年11月25日*版 本 号:v1.0**问题描述:从文件 salary.txt中读取工人工资(不超过500人),全部增加20%,然后进行排序,将排序后的结果保存到文件ordered_salary中。*/#include<fstream>    //处理文件要包括头文件fstream#include <fstream>#include<iostream>#include<cstdlib>   //调用exit(1)需要包含cstdlibusing namespace std;int main( ){    float a[500],t;    int i=0,n;    ifstream infile("salary.txt",ios::in);    if(!infile)    //测试文件打开操作是否成功    {        cerr<<"open error!"<<endl;        exit(1);//打开不成功,则提示后退出。    }    while(infile>>a[i])  //当到达文件尾,则循环处理结束。类似cin>>a,只不过数据来源于打开的文件    i++;    infile.close();//读入完毕要关闭文件    n=i;    for(int i=0;i<n;i++)        a[i]*=1.2;        for(int j=0;j<n-1;j++)            for(int i=0;i<n-j-1;i++)            if(a[i]>a[i+1])    {        t=a[i];        a[i]=a[i+1];        a[i+1]=t;    }    ofstream outfile("ordered_salary.txt",ios::out);    if(!outfile)    {        cerr<<"open error!"<<endl;        exit(1);    }    for(int i=0;i<n;i++)    {        outfile<<a[i]<<endl;        if(i%5==0&&i!=0)            cout<<endl;        cout<<a[i]<<"   ";    }    outfile.close();    cout<<endl;    cout<<"处理完毕,请打开文件查看结果!"<<endl;    return 0;}


运行结果:

知识点总结:熟悉运用文件组织编程

0 0
原创粉丝点击