用選擇法對10個整數按從小到大排序(數組)


用選擇法對10個整數按從小到大排序,要求使用數組。


算法思想:

第一次選擇:從10個整數中挑出當中最小的整數,拿出來;

第二次選擇:從余下的9個整數中挑出當中最小的整數,拿出來,放到上一次挑出的數的后面。

第三次選擇:從余下的8個整數中挑出當中最小的整數。拿出來,放到上一次挑出的數的后面。

…………

以此類推。直到所有挑完。


#include "stdafx.h"
#include<iostream>
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
cout<<"請輸入10個整數"<<endl;
int a[10],i,b[10],j,n=0;
for(i=0;i<10;i++)
{
cin>>a[i];         //輸入10個數,依次放到數組a里。
}
for(j=1;j<=10;j++)         //共要進行10次選擇
{
for(i=0;i<10-j;i++)              //這個循環將挑出余下數中最小的數
{
int t;
if(a[i]<a[i+1])
{
t=a[i];a[i]=a[i+1];a[i+1]=t;
}
}
b[n]=a[10-j];           //將挑出的數依次放到數組b里
n++;
}


for(n=0;n<10;n++)
{
cout<<b[n]<<" ";       //按順序輸出數組b里存放的數
}
return 0;
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM