在C语言中什么叫选择法

Python028

在C语言中什么叫选择法,第1张

当你只有一个选项的时候,使用if(条件表达式

当你只有两个选项的时候,使用if(条件表达式)else(条件表达式)

当你只有多个选项的时候,使用if(条件表达式)else if(条件表达式)...else(条件表达式)

例如你从1到100的数,选择5的倍数打印出来,这时候就用选择法了

for(i=1i<=100i++)

{if(i%5==0)printf("%d\n",i)}

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中 选出 最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。所以这种排序的方法叫选择法排序。

C语言参考实例:

#include <stdio.h>

void main()

{

    int a[]={1,3,4,2,0} 

    int i,j,n=5

    for( i=0i<n-1i++ )

for( j=i+1j<nj++ ) //每一遍都与当前a[i]比较

if ( a[i] < a[j] ) //大的前移

{

int t=a[i]

a[i]=a[j]

a[j]=t 

}

for( i=0i<ni++ )

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

}

选择排序(Selection sort)是一种简单直观的排序算法。工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。

以下是一个实现选择排序的例子:

#define SWAP(x, y, t)  ((t) = (x), (x) = (y), (y) = (t))

 //将list中的n个数据,通过选择排序算法排序。

void selete_sort(int list[], int n)

{

    int i, j, min, temp

    for (i = 0 i < n - 1 i++){

        min = i

        for (j = i + 1 j < n j++)//找出最小元素的下标。

            if (list[j] < list[min])

                min = j

        SWAP(list[i], list[min], temp)//交换最小元素到当前起始位置。

    }

}