您的位置:首页 > 移动开发 > IOS开发

第十五周实验报告(任务三)

2012-03-05 19:27 351 查看
 
实验目的:学会ASCII文件的操作

实验内容:从文件中读入数据,排序并输出到另外一个文件中

* 程序头部注释开始

* 程序的版权和版本声明部分

* Copyright (c) 2011, 烟台大学计算机学院学生

* All rights reserved.

* 文件名称:                             

* 作    者:  张培培                          

* 完成日期:         2011年      12 月       05 日

* 版 本号:         

* 对任务及求解方法的描述部分

* 输入描述:文件salary.txt

* 问题描述:从文件salary.txt中读入500名工人的工资,全部增加100元后进行排序(好事,涨工资了),将排序后的结果在屏幕上输出,并保存到文件ordered_salary.txt中

* 程序输出:ordered_salary.txt

* 程序头部的注释结束

//下面是程序

#include <fstream>

#include<iostream>

using namespace std;

void show_salary(double salary[],int num);//输出工资;

void cin_salary(double salary[],int num);//从文件得到工资;

void cout_salary(double salary[],int num);//储存工资;

void bubble_sort(double arr[], int num);//排序;

void add_salary(double salary[],int num,double money);//加工资;

int main( )

{

 double sal[500];

 int num=500;

 cin_salary(sal,num);//从文件读入工资;

 cout<<"加工资排序前员工工资:"<<endl;

 show_salary(sal,num);//输出工人工资;

 add_salary(sal,500,100);//加工资;

 bubble_sort(sal, num);//排序;

 cout<<"加工资排序后员工工资:"<<endl;

 show_salary(sal,num);//输出工资;

 cout_salary(sal,num);//保存到文件; 

 return 0;

}

//定义void show_salary(salary[])函数;

void show_salary(double salary[],int num)

{

 int i;

 for(i=0;i<num;i++)

 {

  cout<<salary[i]<<"\t";

  if((i+1)!=0)cout<<endl;

 }

 cout<<endl;

}

//定义从文件输入函数;

void cin_salary(double salary[],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>>salary[i];//读入工资;

 }

 infile.close();

}

//定义输出函数;

void cout_salary(double salary[],int num)

{

 int i;

 ofstream outfile("salary.txt",ios::out);

 if(!outfile)                       

 {

  cerr<<"open error!"<<endl;

  exit(1);

 }

 for(i=0;i<500;i++)

 {

  outfile<<salary[i]<<"\n";//输出工资;  

 }

 outfile.close();

}

//定义排序函数;

void bubble_sort(double arr[], int num)

{

 int i,j;

 double st;

 for(i=0;i<num-1;i++)

  for(j=0;j<num-i-1;j++)

   if(arr[j]>arr[j+1])

   {

    st=arr[j];

    arr[j]=arr[j+1];

    arr[j+1]=st;

   }

}

//定义加工资函数;

void add_salary(double salary[],int num,double money)

{

 int i;

 for(i=0;i<num;i++)

 {

  salary[i]=salary[i]+money;

 }

}

运行结果:(贴图)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  任务 ios c