问题如下:用冒泡法进行从小到大排序
分析问题:首先看一下这个题,经过读题我们得知使用方法是冒泡法排序,先说一下什么是冒泡排序:它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。这个算法的由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列)。代码如下:
#include <stdio.h>
int mian()
{
int a[11],i,j,t;
printf("请输入10个数据:\n");
for(i=1;i<11;i++)
scanf("%d",&a[i]);
for(i=1;i<11;i++)
for(j=1;j<11;j++)
if(a[j]>a[j+1])
{
t=a[i];
a[j]=a[j+1];
a[j+1]=t;
}
printf("排序后的数据是:\n");
for(i=1;i<=10;i++)
printf("%5d",a[i]);
printf("\n");
}