C语言一维数组排序

Python010

C语言一维数组排序,第1张

今天为嘛总是见到最后这句话……

初学者……冒泡呗,两个数据都冒。两个for循环,两趟比较,每趟把最大的放最前面(或者最小的放最后面,我感觉都一样)交换的时候,把两个都同时交换了就好……

#include <stdio.h>

int main()

{

int i,j,t,a[11] //定义变量及数组为基本整型

printf("请输入10个数:\n")

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

scanf("%d",&a[i]) //从键盘中输入10个数

for(i=1i<10i++)//变量i代表比较的趟数

for(j=1j<10-ij++)//变最j代表每趟两两比较的次数

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

{

t=a[j] //利用中间变量实现两值互换

a[j]=a[j+1]

a[j+1]=t

}

printf("排序后的顺序是:\n")

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

printf("%5d",a[i]) //将冒泡排序后的顺序输出

printf("\n")

return 0

}

#include&ltstdio.h&gt

int main()

{

int i,j,min,t,a[10]={2,4,8,3,6,9,7,222,64,88}

printf("排序前的序列为:\n")

for(i=0i&lt10i++)//输出排序前的序列

{

printf("%5d",a&lti&gt)

}

printf("\n")

for(i=0i&lt9i++)

{

min=i//把每次循环的第一个数作为最小值

for(j=i+1j&lt10j++)

{

if(a[min]&gta[j])

min=j//交换

}

if(min!=i)//说明第一个数不是最小数,所以将a[i+1]~a[10]中最小值与a&lti&gt对换

{

t=a[min]

a[min]=a&lti&gt

a&lti&gt=t

}

}

printf("排序后的序列为:\n")

for(i=0i&lt10i++)//输出排序后的序列

printf("%5d",a&lti&gt)

printf("\n")

return 0

}

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include&lt文件名&gt

2、#include"文件名"