0
点赞
收藏
分享

微信扫一扫

数组(选择法排序)

龙毓七七 2022-10-24 阅读 164

选择法排序:选择所要排续的数组中的最大值或者最小值,按从小到大或者从大到小的排序。用两个数进行相互比较。

例如:

先从键盘输入10个数,按顺序赋值给数组。在进行相应的比较。

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int i, j, Maximum, position;
int a[10];
printf("为数组赋值:\n");
for (i = 0; i < 10; i++)
{
printf("a[%d]=",i); //这里生成数组下标
scanf("%d",&a[i]); //这里为数组赋值
}
for (i = 0;i < 9;i++) //10个数只需要比较9次
{
Maximum = a[i]; //这里假设a[i]元素为当前最大值
position = i; //这里是记录元素位置
for (j = i + 1; j < 10; j++) //这里是把a[0]逐个与后面的数进行比较
{
if (Maximum < a[j])
{
Maximum = a[j]; //满足条件就进行互换
position = j;
}
}
a[position] = a[i];
a[i] = Maximum;
}
for (i = 0; i < 10; i++)
{
printf("%d\t",a[i]);
if (i == 4) //排列好的数5个一行
printf("\n");
}
return 0;
}

结果如下:

数组(选择法排序)_数组

举报

相关推荐

0 条评论