標題:
[作業] 排序 (四)
[打印本頁]
作者:
鄭繼威
時間:
2022-4-30 00:55
標題:
[作業] 排序 (四)
本帖最後由 鄭繼威 於 2022-4-30 12:13 編輯
假設班上有五位同學, 其成績資料如下:
string name[5]={"大雄","小叮噹","宜靜","技安","阿福"};
int score[5]={60,80,100,40,75};
試利用選擇排序法, 為成績表加上排名.
本帖隱藏的內容需要回復才可以瀏覽
提示:
看看排序 (一)
int n[]={12,57,-6,-32,0,23}
是我們一開始的陣列
做好排序後我們再宣告第二個陣列(名字)
string name[]={"a","b","c","d","e","f"};
22
接下來排序(由大到小)交換的時候順便換名字
22~24行是原本的排序+26~28行順便排名字
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int tmp;
int n[]={12,57,-6,-32,0,23};
string tmp2;
string name[]={"a","b","c","d","e","f"};
cout<<"排序前: "<<endl;
for(int i=0; i<6; i++)
cout<<n[i]<<"\t"<<name[i]<<endl;
cout<<endl;
for(int i=0; i<5; i++)
{
for(int j=i+1; j<6; j++)
{
if(n[j]<n[i])
{
tmp=n[j];
n[j]=n[i];
n[i]=tmp;
//換n的時候順便換name
tmp2=name[j];
name[j]=name[i];
name[i]=tmp2;
}
}
}
cout<<"排序後: "<<endl;
for(int i=0; i<6; i++)
cout<<n[i]<<"\t"<<name[i]<<endl;
cout<<endl;
system("pause");
return 0;
}
複製代碼
作者:
鍾易澄
時間:
2022-4-30 11:43
此帖僅作者可見
作者:
曾善勤
時間:
2022-4-30 11:44
此帖僅作者可見
作者:
孫子傑
時間:
2022-4-30 11:49
此帖僅作者可見
作者:
田家齊
時間:
2022-4-30 12:02
此帖僅作者可見
作者:
徐譽豈
時間:
2022-4-30 12:02
此帖僅作者可見
作者:
柳侑辰
時間:
2022-4-30 12:05
此帖僅作者可見
作者:
高昀昊
時間:
2022-4-30 12:58
此帖僅作者可見
作者:
鄭繼威
時間:
2022-5-6 23:50
此帖僅作者可見
作者:
許馹東
時間:
2022-5-7 10:31
此帖僅作者可見
作者:
郭博鈞
時間:
2022-5-7 11:42
此帖僅作者可見
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2