首页 > 其他分享 >2008秋-计算机软件基础-冒泡排序

2008秋-计算机软件基础-冒泡排序

时间:2023-11-08 10:37:54浏览次数:36  
标签:计算机软件 线性表 int flag 冒泡排序 算法 升序 2008

/*

Title:  冒泡排序

Author: eman lee

算法功能:冒泡排序算法实现将一个长度为n的线性表r上的所有元素按关键字升序排列。
*/

#include<stdio.h>

void bubblesort(int r[],int n)

 { /*elements are stored in r[1] to r[n]*/

  int i,j,flag;

  int temp;

  flag=1;

  i=1;

  while((i<n)&&(flag==1)) /*外循环控制排序的总趟数*/

   {  flag=0;

      for(j=n;j>i;j--) /*内循环控制一趟排序的进行*/ 

          if(r[j]<r[j-1])  /*相邻元素进行比较,若逆序就交换*/

           {

          flag=1;

              temp=r[j];

              r[j]=r[j-1];

              r[j-1]=temp;

           }

      i++;

    }

} /*bubblesort*/ 


void show(int  r[] , int n)

{

  /*elements are stored in r[1] to r[n]*/

  int i;

  for(i=1;i<=n;i++)

   printf(" %d ",r[i]);

  printf("\n"); 


}

void main()

{

 int a[9]={0,38,20,46,38,74,91,12,25};

 show(a,8);

 bubblesort(a,8);

 show(a,8);

}

标签:计算机软件,线性表,int,flag,冒泡排序,算法,升序,2008
From: https://blog.51cto.com/emanlee/8245749

相关文章

  • 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题4,5
    Author:EmanLee 计算机软件基础,教材P131,第4题参考答案(1)查找e的过程abcdefghLow=1Mid=4High=8abcdefghLow=5Mid=6High=8abcdefghLow=5Mid=5High=5查找成功(2)查找f的过程abcdefghLow=1Mid=4High=8abcdefghLow=5Mid=6High=8查找成功(3)查找h的过程abcdefghLow=1Mid=4High=8abcdefghLo......
  • 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题6之一
    Author:EmanLee P131,第6题之一参考答案(1)      直接插入排序初始状态第一趟第二趟第三趟第四趟第五趟第六趟第七趟第八趟第九趟(2)      冒泡排序初始状态第一趟 第二趟第三趟第四趟第五趟 第六趟 第七趟第八趟第九趟53       12    12 ......
  • 2008秋-计算机软件基础-快速排序
    快速排序c语言源程序之一//快速排序//使用递归调用来实现快速排序//Author:emanlee/*QuickSort*/#include<stdio.h>voidquick_sort(intdata[],intlow,inthigh){inti,j,pivot;if(low<high){pivot=data[low];......
  • 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题6之二
    P131,第6题之二参考答案(1)      快速排序(第一趟)初始状态Pivot=5353871261706827652135J向左扫描ij第一次交换后358712617068276521ijI向右扫描,第二次交换后351261706827652187ijJ向左扫描,第三次交换后352112617068276587ijI向右扫描,第四次交换352112706827656187ijJ向左扫描35......
  • 2008秋-计算机软件基础-直接插入排序
    //==============================================//直接插入排序(StraightSelectionSort)//Author:emanlee//直接插入排序c语言源程序//==============================================#defineN5#include<stdio.h>//显示元素voidDisplay(inta[],intelem......
  • 2008秋-计算机软件基础-简单选择排序
    //===========================================//简单选择排序//Author:EmanLee//===========================================#include<stdio.h>#defineN10voidDisplay(int*a,intn){inti;for(i=0;i<n;i++){printf(&qu......
  • 2008毕业设计-毕业设计需要了解的信息
     学号:姓名:系别:专业:班级:联系电话:常用邮箱:备用联系方式家庭电话:宿舍电话:备用邮箱: 选择的题目:在就业单位做毕业设计,还是在学校做毕业设计: (在其后填写是或否):是否有PC:是否已过四级:是否有需要补考课程:是否已签订工作: 工作地点: 是否学习过(在其后填写是或否):CC++JavaC#2003C#2005VB......
  • 2008秋-计算机软件基础-实验内容
    ------------------------------------------------------------------题目:实验C语言综合复习目的:掌握函数,结构体,指针的使用,预习线性表的顺序存储(顺序表)实验内容:1看PPT, 函数,结构体,指针章节。要求: -----------------------------------------------------------......
  • 2008秋季-计算机软件基础-线性表的顺序存储(顺序表)
    引例:在一维数组中插入和删除元素//在一维数组中插入和删除元素//2008-8-31#include<stdio.h>voidmain(){//在一维数组位置Location处插入EintList[10]={0,1,2,3,4,5};intListLength=6;//表长intE=6;//被插入的元素inti;//循环变量intLocati......
  • 2008秋季-计算机软件基础-如何使用FTP下载局域网内资源
    1打开IE2在地址栏输入FTP地址ftp://194.168.0.823选择文件,复制到本机......