您的位置:首页 > 其它

第14周项目2(3)

2014-11-29 17:03 211 查看
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:ee.cpp
*作    者  张伟建
*完成日期:2014年11月29日
*版 本 号:v1.0
*
*问题描述:  插入文件的成绩单
*输入描述:
*输出描述:
*/

#include <fstream>   //操作文件必写
#include<iostream>
#include<string>
#include<cstdlib>   //调用exit(1)需要包含cstdlib
using namespace std;
const int num=120;
int main( )
{
int i,j,t,n=0;
string temp;
string name[num] ;
double score[num];

//以输入的方式(ios::in)打开文件,注意f1.dat必须在文件夹中存在
ifstream infile("score.txt",ios::in);
//测试是否成功打开,打开失败时(如要读的数据文件不存在)退出
if(!infile)
{
cerr<<"open error!"<<endl;
exit(1);
}
//下面读取数据并完成处理,若数据需要多次使用,可以读入到数组中
for(i=0;i<num;i++)
{
infile>>name[i];
infile>>score[i];
if(name[i]=="")
break;

n++;
}
infile.close();
for(j=0; j<n; j++) //(1)按成绩排序
{
for(i=0; i<n-j-1; i++)
{
if(score[i]<score[i+1])
{
t=score[i];
score[i]=score[i+1];
score[i+1]=t;
temp=name[i];
name[i]=name[i+1];
name[i+1]=temp;
}
}
}
cout<<"按成绩排序结果为:"<<endl;
for(i=0;i<n;i++)
{
cout<<name[i]<<" "<<score[i]<<"分  "<<endl;
}
for(j=0; j<num-1; j++)
{
for(i=0; i<num-j-1; i++)
{
if(name[i]<name[i+1])
{
t=score[i];
score[i]=score[i+1];
score[i+1]=t;
temp=name[i];
name[i]=name[i+1];
name[i+1]=temp;
}
}
}
cout<<"按姓名排序结果为:"<<endl;
for(i=0;i<n;i++)
{
cout<<name[i]<<" "<<score[i]<<"分  "<<endl;
}

return 0;
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: