选择排序c语言代码

Python014

选择排序c语言代码,第1张

选择排序代码如下:

#include <stdio.h>

int main()

{

int a[100], n, i, j, position, swap

printf("Enter number of elementsn")

scanf("%d", &n)

printf("Enter %d Numbersn", n)

for (i = 0i <ni++)

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

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

{

position=i

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

{

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

position=j

}

if(position != i)

{

swap=a[i]

a[i]=a[position]

a[position=swap

}

}

printf("Sorted Array:n")

for(i = 0i <ni++)

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

return 0

}

冒泡排序是排序算法的一种,思路清晰,代码简洁,常被用在大学生计算机课程中。“冒泡”这个名字的由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。这里以从小到大排序为例进行讲解。基本思想及举例说明

冒泡排序的基本思想就是不断比较相邻的两个数,让较大的元素不断地往后移。经过一轮比较就,选出最大的数;经过第2轮比较,就选出次大的数,以此类推。下面以对 3 2 4 1 进行冒泡排序说明。

1.这个算法用rand函数产生新的要排序的数据,与已有的有序数列中的数据依次比较,如果遇到比他大的数据,就从该数据开始,一直交换到末尾,达到一个插入的效果。从而形成有序的数列。

2.此外,只用rand函数并不能达到真正随机的效果。如果要实现真正随机的效果,还要配合srand函数才行。

3.具体代码如下:#include "stdio.h"#include "stdlib.h"void main(){int a[10],temp,rprintf("请输入一个种子\n")scanf("%d",&r)srand(r)for(int i=0i<9i++) 。