15周項目三:帶姓名的成績單。

/*
* 程序的版權和版本聲明部分
* Copyright (c)2013, 煙臺大學計算機學院學生
* All rightsreserved.
* 文件名稱: array.cpp
* 作    者:趙振凱
* 完成日期:2013年12月9日
* 版本號: v1.0
* 輸入描述:無
* 問題描述:冒泡+數組。
*/
#include <iostream>
#include <string>
using namespace std;
int main()
{
    int i,j,t;
    string N;
    string name[20]={"q","a","z","w","s","x","e","d","c","r","f","v","t","g","b","y","h","n","u","j"};
    double score[20]={79,84,65,89,60,92,78,56,85,75,46,86,91,52,48,63,21,57,64,19};
        for(j=0;j<19;j++)
        for(i=0;i<19-j;i++)
        {
            if(score[i]<score[i+1])
            {
                t=score[i];
                score[i]=score[i+1];
                score[i+1]=t;
                N=name[i];
                name[i]=name[i+1];
                name[i+1]=N;
            }
        }
        cout<<"按成績排序的結果是:"<<endl;
        for(i=0;i<20;i++)
        cout<<name[i]<<" = "<<score[i]<<"\t";
        for(j=0;j<19;j++)
        for(i=0;i<19-j;i++)
        {
            if(name[i]>name[i+1])
            {
                N=name[i];
                name[i]=name[i+1];
                name[i+1]=N;
                t=score[i];
                score[i]=score[i+1];
                score[i+1]=t;
            }
        }
        cout<<"按首字母排序的結果是:"<<endl;
        for(i=0;i<20;i++)
        cout<<name[i]<<" = "<<score[i]<<"\t";
        return 0;
}


運行結果:

心得體會:

參考了一下答案覺得也不是很難...爲什麼我以前費了這麼長時間。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章