第十六周 任务一
来源:互联网 发布:阿里算法大赛 编辑:程序博客网 时间:2024/06/11 04:36
/*实验目的:学会ASCII文件的操作 实验内容:从文件中读入数据,排序并输出到另外一个文件中 * 程序头部注释开始 * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:工资 * 作 者:薛广晨 * 完成日期:2011 年 6 月 01 日 * 版 本号:x1.0 * 对任务及求解方法的描述部分 * 输入描述:文件salary.txt * 问题描述:从文件salary.txt 中读入500 名工人的工资,全部增加100 元后进行排序,将排序后的结果在屏幕上输出, 并保存到文件ordered_salary.txt 中。* 程序输出:ordered_salary.txt * 程序头部的注释结束 */ #include <fstream> #include <iomanip>#include <iostream> using namespace std; void ouput_salary(double a[],int num);//输出工资; void cin_salary(double a[],int num);//从文件得到工资; void cout_salary(double a[],int num);//储存工资; void bubble_sort(double a[], int num);//排序; void add_salary(double a[],int num,double money);//加工资; int main( ) { double a[500]; int num=500; cin_salary(a,num);//从文件读入工资; cout<<"加工资排序前员工工资:"<<endl; ouput_salary(a,num);//输出工人工资; add_salary(a,500,100.0);//加工资; bubble_sort(a, num);//排序; cout<<"加工资排序后员工工资:"<<endl; ouput_salary(a,num);//输出工资; cout_salary(a,num);//保存到文件; system("pause"); return 0; } void cin_salary(double a[],int num) { int i; ifstream infile("salary.txt",ios::in); if(!infile) { cerr<<"open error!"<<endl; exit(1); } for(i=0;i<num;i++) { infile >> a[i]; } infile.close(); cout<<endl; } void cout_salary(double a[],int num) { ofstream outfile("ordered_salary.txt",ios::out); if(!outfile) { cerr<<"open error!"<<endl; exit(1); } for(int i=0;i<num;i++) outfile<<a[i]<<endl; outfile.close(); } void bubble_sort(double a[], int num) { int i,j,k; double t; for(i=0;i<num-1;i++) { k=i; for(j=i+1;j<num;j++) if(a[j]<a[k]) k=j; t=a[k]; a[k]=a[i]; a[i]=t; } } void ouput_salary(double a[],int num) { int i; for(i=0;i<=num-1;i++) { cout << setiosflags(ios::left) << setw(10)<< a[i]; if((i+1) % 8 == 0)cout<<endl; } cout<<endl; } void add_salary(double a[],int num,double money) { int i; for(i=0;i<num-1;i++) { a[i]=a[i]+money; } }
运行前:
运行后:
涨工资前:
涨工资后:
上机感言:对文件的操作非常的方便,这对数据量很大的操作更是省事
- 第十六周 任务一
- 第十六周 任务一
- 第十六周 任务一
- 第十六周任务一
- 第十六周任务一
- 第十六周任务一
- 第十六周任务(一)
- 第十六周作业任务一
- 第十六周任务(一)
- 第十六周任务(一)
- 第十六周实验报告(任务一)
- 第十六周 任务二
- 第十六周 任务三
- 第十六周 任务二
- 第十六周 任务三
- 第十六周 任务四
- 第十六周任务1
- 第十六周任务2
- 关于android2.3调试g-sensor
- 【转载】SAP用户出口清单(User Exits)
- vs2008控制台程序一闪而过解决方法
- int GetMonth( ) const throw( );后面的throw( )什么意思?
- Win7: Logoff被用户Lock的屏幕
- 第十六周 任务一
- AODV链表
- C# HttpHelper,Httprequest,请求时无视编码,无视证书,无视Cookie,网页抓取
- Android中Context详解 ---- 你所不知道的Context
- 分治策略之二分搜索技术
- sicily--1087. A Funny Game
- 串口通信与裸机程序
- shell中获取两个日期的间隔时间
- Java路径的最终解决方案:相对路径寻址