7-10 选择法排序
分数 20
全屏浏览题目
切换布局
作者 C课程组
单位 浙江大学
本题要求将给定的n个整数从大到小排序后输出。
输入格式:
输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。
输出格式:
在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。
输入样例:
4
5 1 7 6
输出样例:
7 6 5 1
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
参考答案
#include<>
int main(){
int n,t=0,z=0;
scanf("%d",&n);
int group[10];
int paixu[10];
for(int i=0;i<n;i++)scanf("%d",&group[i]);
int min = group[0];
for(int j=0;j<n;j++){
if(group[j]<min){
min = group[j];//找最小数
}
}
int max=min;//保证max初始化为最小数,因为可能出现负数
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(group[j]>max){
max = group[j];
t = j;
}
}
paixu[i] = max;
group[t] = min;//将最大数设置为最小数
max = min;
}
for(int i=0;i<n-1;i++)printf("%d ",paixu[i]);
printf("%d",paixu[n-1]);
return 0;
}