C语言中的排序法

Python012

C语言中的排序法,第1张

c语言中排序法有选择法和冒泡法是最常见的。

1冒泡法对10个数排序

#include<stdio.h>

void

main

()

{

int

a[10]

int

i,j,t

printf("please

input

10

numbers:\n")

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

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

printf("\n")

for(j=0j<9j++)

//进行9次循环,实现9次比较

for(i=0i<9-jj++)

//在每一次比较中在进行9-j次比较

if(a[i]>a[i+1])

//相邻两数比较大的下沉即交换

{t=a[i+1]

a[i+1]=a[i]

a[i]=t

}

printf("the

sorted

numbers

:\n")

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

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

printf("\n")

}

不管有多少数只要改变一下都可以实现功能。定义一个大的数组,用多次循环就可以实现。

2选择法对10个数排序

此法没有冒泡法方便不在叙述

排序主要分为以下几种。

1.冒泡排序:通过循环比较前后数的大小进行交换。最后使得数组有序。

2.快速排序:首先将第一个数作为一个基准,然后循环,将前半部分大于该数的与后半部分小于该数的进行交换,使得以该数为分界线,前面的小于该数,后面的大于该数,然后分前后两部分继续。