选择法排序。输入一个正整数n (1<n≤10),再输入n个整数,将它们从大到小排序后输出。试编写相应程序。
#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
int a[n];
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
int m;
for(int i=0;i<n-1;i++){
for(int j=0;j<n-1-i;j++){
if(a[j]>a[j+1]){
m=a[j+1];
a[j+1]=a[j];
a[j]=m;
}
}
}
for(int i=0;i<n;i++){
printf("%d ",a[i]);
}
return 0;
}
#include<stdio.h>
int main(){
int a[10],i,n,pos,temp;
printf("Enter n:\n");
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(pos=0;pos<n;pos++){
for(i=pos+1;i<n;i++){
if(a[pos]>a[i]){
temp=a[pos];
a[pos]=a[i];
a[i]=temp;
}
}
}
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
#include<stdio.h>
int main ()
{
int i, j;
int a [10];
int n;
scanf ("%d",&n);
for (i=0; i<n; i++)
scanf ("%d",&a[i]);
for (i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[i]<a[j])
a [i]^=a [j]^=a [i]^=a [j];
for (i=0; i<n;i++)
printf ("%d ", a [i]);
printf("\n");
return 0;
}
#include <stdio.h> int main(void) { int i, index, k, n, temp; int a[10]; printf("Input n: "); scanf("%d", &n); printf("Input %d integers: "); for(i=0; i<n; i++) scanf("%d", &a[i]); for(k=0; k<n-1; k++){ index=k; for(i=k+1; i<n; i++) if(a[i]> a[index]) index=i; temp=a[index]; a[index]=a[k]; a[k]=temp;