2019-03-19 C语言学习40-用选择法对10个数排序

1.用选择法对10个数排序

设计思路:

1.先输入10个数,scanf

2.后循环输出

3.选择比较交换-10个数,第一个假设是最小的(min=i),然后从后面九个数(j=i+1)找出最小的与第一个比较,比第一个小,则进行交换,否则不交换。

4.排序后输出

代码:

# include<stdio.h>

int main()

{

int i,j,min,temp,a[10];

printf("enter data:\n");

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

{

printf("please enter ten numbers:\n");

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

scanf("%d",&a[i]); //输入10个数

}

printf("\n");

printf("The orginal numbers:\n");

for (i=1;i<=10;i++)  //在c语言中,数组的下标从0开始

printf("%5d",a[i]); //输出这10个数

printf("\n"); //以下8行是对这10个数排序

for (i=1;i<=9;i++)

{min=i;

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

if (a[min]>a[j]) min=j;

temp=a[i]; //以下3行将a[i+1]~a[10]中最小值与a[i]对换

a[i]=a[min];

a[min]=temp;

}

printf("\n The sorted numbers:\n"); //输出已排好序的10个数

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

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

printf("\n");

return 0;

}

结果展示:



©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容