题目内容:
程序读入一个正整数n(0<n<=100000),然后读入n个整数,均为32位下的整数。输出对这个整数排序后的结果,每个整数后面有一个空格。
输入格式:
一个表示个数的正整数n,和n个整数,以空格间隔。
输出格式:
排序后的n的整数,每个整数后面有一个空格。
输入样例:
6 2 23 54 12 6 8
输出样例:
2 6 8 12 23 54
代码
#include<stdio.h>
int max(int a[],int len)
{
int maxid = 0;
int i = 0;
for(i=0;i<len;i++){
if(a[i]>a[maxid]){
maxid = i;
}
}
return maxid;
}
int main()
{
int maxid = 0;
int i = 0;
int len = 0;
int cnt = 0;
while(cnt == 0)
{
scanf("%d",&len);
cnt++;
}
int a[len];
for(i=0;i<len;i++)
{
if(cnt == 1)
{
scanf("%d",&a[i]);
}
}
for(i=len-1;i>0;i--)
{
maxid = max(a,i+1);
int t =a[maxid];
a[maxid] = a[i];
a[i] = t;
}
for(i=0;i<len;i++){
printf("%d ",a[i]);
}
return 0;
}