【初学C语言】冒泡排序

#include<stdio.h>
int main()
{
 int a[10],i,j,k,l,t;
 for(i=0;i<10;i++)
 {
  scanf("%d",&a[i]);
 }
 
 //①由输入设备抓取10个数,填充数组。
 
 for(j=1;j<=10;j++)   
 {
  for(k=0;k<10-j;k++)
  {
   if(a[k]>a[k+1])
   {
    t=a[k];
    a[k]=a[k+1];
    a[k+1]=t;
   }
  }
 }
 
 //②冒泡算法的核心,由嵌套的两层循环实现。

 for(l=0;l<9;l++)
 {
  printf("%d ",a[l]);
 }
 printf("%d",a[9]);
 
 //③排序完成的数据输出。
 
 return 0;
}

先祭出代码。算法


分析:数组

开始分别定义了a[10],i,j,k,l,t几个变量,若是要给它们分分类的话,那么i,l为一组,他们分别为循环的控制变量来实现数组中数据的输入与输出。j,k为一组,他们来实现冒泡算法的核心表达。t为中间变量,为交换相邻两元素的跳板。ide

在此①③不做赘述,着重分析理解②。spa

相关文章
相关标签/搜索