C语言编程排序:输入一个正整数n,再输入n个整数,用选择法对这n个整数按从小到大的顺序排序后输出。
例如:
输入:9 8 7 6 5 4 3
输出:3 4 5 6 7 8 9
选择排序的思想:选出最小的一个数与当前序列中的第一个数交换,再在余下的数字中选出最小的和第二个交换。
其中会有两层循环:
第一层循环:
一次遍历序列中的每一个元素;
第二层循环:
将第一层循环得到的当前元素依次与剩下的元素进行比较,符合条件的则进行交换。
代码如下:
#include<stdio.h>
int main()
{
int i=0;
int j=0;
int tmp,n;
int arr[20];
printf("请输入您要排序的整数个数n(n<20): \n");
scanf("%d",&n);
printf("arr[%d]: ",n);
for(i=0;i<n;i++)
{
scanf("%d",&arr[i]);
}
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(arr[j]<arr[i])
{
tmp=arr[i];
arr[i]=arr[j];
arr[j]=tmp;
}
}
}
printf("排序后的%d个整数:\narr[%d]: ",n,n);
for(i=0;i<n;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
return 0;
}
运行结果如下:
菜菜的代码,希望能够帮助到你哟!