/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:曹昕卓
*完成日期:2013年 12月12日
*版本号:v1.0
*对任务及求解方法的描述部分:
*输入描述: 无
*问题描述:...
*程序输出:...
*问题分析:
*算法设计:
*/
#include<iostream>
#include<string>
using namespace std;
const int num=8; //实际运行时可以改为20
int main()
{
int i,j,t;
string temp;
string name[num]={"zhao","qian","sun","li","zhou","wu","zheng","wang"};
double score[num]={79,84,65,89,60,92,78,56};
//(1)按成绩排序
for(j=0;j<num-1;j++)
for(i=0;i<num-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<num;i++)
cout<<name[i]<<"\t"<<score[i]<<endl;
//(2)按姓名排序
for(j=0;j<num-1;j++)
for(i=0;i<num-j-1;i++)
{
if(name[i]<name[i+1])
{
temp=name[i];
name[i]=name[i+1];
name[i+1]=temp;
t=score[i];
score[i]=score[i+1];
score[i+1]=t;
}
}
cout<<"按同学姓名排序后有结果是:"<<endl;
for(i=0;i<num;i++)
cout<<name[i]<<"\t"<<score[i]<<endl;
return 0;
}
成果展示: