1427 - C语言-选择排序
时间限制 : 1 秒
内存限制 : 128 MB
用选择法对10个整数从小到大排序。
题目输入
10个整数
题目输出
排序好的10个整数
输入/输出样例
输入格式
4 85 3 234 45 345 345 122 30 12
输出格式
3 4 12 30 45 85 122 234 345 345
C语言解答
int main(int argc, char* argv[]) { int num[10],i,j,a,k; for(i=0;i<10;i++) { scanf("%d",&a); for(j=0;j<i;j++) if(num[j]>a) break; for(k=i;k>j;k--) num[k]=num[k-1]; num[k]=a; } for(i=0;i<10;i++) printf("%d\n",num[i]); return 0; }
C++解答
#include<iostream> using namespace std; int a[11]; int main() { for (int i=1; i<=10; i++) cin>>a[i]; for (int i=1; i<10; i++) //选择排序 { int k=i; for (int j=i+1; j<=10; j++) if (a[k]>a[j]) k=j; if (k!=i) { int t=a[k]; a[k]=a[i]; a[i]=t; } } for (int i=1; i<=10; i++) cout<<a[i]<<endl; return 0; }