输入一个正整数 n (1<n<=10),再输入 n 个整数,将它们从大到小排序后输出

如题所述

第1个回答  2011-04-24
#include <stdlib.h>
#include <iostream>
using namespace std;
int A[10];
int cmp(const void * a , const void * b)
{
return *(int*) a - *(int*)b;
}

int main()
{
int n;
cin >> n;
for (int i = 0; i < n; i++)
cin >> A[i];
//
qsort(A , n , sizeof(int) , cmp);
for (int i= 0; i < n; i++)
cout << A[i] <<endl;
return 0;
}本回答被网友采纳
第2个回答  2011-05-05
#include<stdio.h>
int main(void)
{
int i,n,k,index,j;
int a[10];
printf("Input n:");
scanf("%d",&n);
printf("Input %d integers:",n);
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;
j=a[index];
a[index]=a[k];
a[k]=j;
}
printf("After sorted:");
for(i=0;i<n;i++)
printf("%d",a[i]);
printf("\n");
return 0;
}
相似回答