如何用c语言编写一个程序,实现按从大到小的顺序排序输出10个数

如题所述

用选择排序法编写c语言,实现从键盘上输入10个数,按从大到小的顺序排序输出。代码如下:

#include<stdio.h>

int main()

{

int i,j,a[10],t;

printf("输入数");

for (i = 0; i < 10; i++)

scanf("%d",&a[i]);

for (i = 0; i < 10; i++)

{

for (j = i + 1; j < 10;j++) 

if (a[i] < a[j]){

t = a[i];

a[i] = a[j];

a[j] = t;

}

}

printf("从大到小");

for (i = 0; i < 10; i++)

printf("%2d", a[i]);

return 0;

}

扩展资料:

代码还可以设计,如下:

#include<stdio.h>

int main()

{

int a[10],i,j,t;//定义数组; 

for(i=0;i<10;i++){

scanf("%d",&a[i]);//给数组赋值; 

}

for(i=0;i<9;i++)//10个数,进行9轮比较; 

for(j=0;j<10-i;j++){//第一个数比较9次,依次递减; 

if(a[j]>a[j+1]) {//交换值; 

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

for(i=0;i<10;i++){

printf("%d\n",a[i]);//输出数组的值; 

}

return 0;

}

printf("the sorted numbers:\n"); 

for(i=0;i<10;i++) 

printf(" %d",a[i]); 

printf("\n"); 

}

参考资料:百度百科-printf

温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-01-07
以下是一种方法,使用冒泡排序算法实现:
#include <stdio.h>
int main() {
int i, j, temp;
int a[10] = {1, 3, 5, 7, 9, 2, 4, 6, 8, 10};
for (i = 0; i < 10; i++) {
for (j = 0; j < 10 - i - 1; j++) {
if (a[j] < a[j + 1]) {
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (i = 0; i < 10; i++) {
printf("%d ", a[i]);
}
return 0;
}
第2个回答  2023-01-05
如何用c语言编写一个程序,实现按从大到小的顺序排序输出10个数

#include
int main() {
int i, j, a[10], temp;
printf("请输入10个数字:\n");

for (i = 0; i < 10; i ) //循环读取10个数字
scanf("%d",