C語言算法:冒泡法排序

C語言 冒泡法排序
要點:如果要對 N 個數 進行冒泡排序,那麼要進行 N-1 趟 比較,在第1 趟比較中 要 進行 N-1 次兩兩 比較,(C語言中的數值比較 每次只能在 兩個數之間),推而廣之,在第J趟比較中 要進行 N- 1 - J次 的兩兩比較。

#include <stdio.h>//預處理命令 
#define  N 10// 設定 比較 數字的個數 
void main()
{
	int i,j,t,a[11];
	printf("請輸入10個數: ");
	for (i=0;i<N;i++)	//從鍵盤 中輸入10 個數 
		scanf("%d",&a[i]);
	for (i=0;i<N-1;i++)		//比較的趟數 
		for (j=0;j<N-1-i;j++)	//每趟兩兩比較的次數 
			if (a[j]>a[j+1])	//利用中間變量 實現值互換 
				{
					t=a[j];a[j]=a[j+1];a[j+1]=t;	 
				}
	printf("經過 冒泡法排序後 的順序是: ");
	for (i=0;i<N;i++)
		printf("%3d",a[i]);
	printf("\n");
}

程序運行截圖:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章