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

Python020

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

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

#include<stdio.h>

int main()

{

int i,j,a[10],t

printf("输入数")

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

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

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

{

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

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

t = a[i]

a[i] = a[j]

a[j] = t

}

}

printf("从大到小")

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

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

return 0

}

扩展资料:

代码还可以设计,如下:

#include<stdio.h>

int main()

{

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

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

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

}

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

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

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

t=a[j]

a[j]=a[j+1]

a[j+1]=t

}

}

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

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

}

return 0

}

}

printf("the sorted numbers:\n")

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

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

printf("\n")

}

参考资料:百度百科-printf

#include <stdio.h>

void main()

{

int a[10]

int i,j,t

for(i=0i<=9i++)

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

for(i=0i<9i++)

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

{

if(a[i]>a[j])

{ /*交换从这里开始*/

t=a[i]

a[i]=a[j]

a[j]=t}

} /*交换到这里结束*/

for(i=0i<=9i++)

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

printf("\n")/*下一次循环时换行*/

}

也没有多大的错误

小心点,C是分语句执行的,到了“;”就是一条语句,除非你用“{}”,这样可以将几个语句合并为一条语句。可以简单这么理解。