實驗目的:學會冒泡排序算法
實驗内容:實作冒泡排序算法,并将之定義為一個函數
* 程式頭部注釋開始
* 程式的版權和版本聲明部分
* Copyright (c) 2011, 煙台大學計算機學院學生
* All rights reserved.
* 檔案名稱: 運用冒泡法排序
* 作 者: 劉江波
* 完成日期: 2011 年 11 月 30 日
* 版 本号: v11.30
* 對任務及求解方法的描述部分
* 輸入描述:要排序的資料在程式中初始化
* 問題描述:實作冒泡排序
* 程式輸出:排序後的結果
* 程式頭部的注釋結束(此處也删除了斜杠)
#include <iostream>
using namespace std;
void bubble_sort(int arr[], int num);
void output_array(int arr[], int num);
int main( ) //不要對main函數有任何改動
{
int a[20]={86,46,22,18,77,45,32,80,26,88,57,67,20,18,28,17,54,49,11,16};
int b[15]={27,61,49,88,4,20,28,31,42,62,64,14,88,27,73};
bubble_sort(a,20); //用冒泡法按降序排序a中元素
output_array(a,20); //輸出排序後的數組
bubble_sort(b,15); //用冒泡法按降序排序b中元素
output_array(b,15); //輸出排序後的數組
return 0;
}
void bubble_sort(int arr[], int num)
{
int i,j,t;
for(i=0;i<num-1;i++)
for(j=0;j<num-1-i;j++)
if(arr[j]>arr[j+1])
{t=arr[j];arr[j]=arr[j+1];arr[j+1]=t;}
}
void output_array(int arr[], int num)
{
int j;
for(j=0;j<num;j++)
cout<<arr[j]<<" ";
cout<<endl;
return ;
}
運作結果:(貼圖)
經驗積累:
1. 數組名作形式參數,将能改變作為實際參數的數組的值,實際參數傳遞給形式參數的是數組的位址值,也是傳值;
2. 形式參數中不指定數組大小,實際數組的大小也一并作為參數傳遞;
3.
上機感言:O(∩_∩)O~~快樂。