您的位置:首页 > 编程语言 > C语言/C++

C++程序设计实验报告(十八)

2012-02-01 17:20 260 查看
第15周报告1:

实验目的:学会冒泡排序算法

实验内容:实现冒泡排序算法,并将之定义为一个函数

* 程序头部注释开始

* 程序的版权和版本声明部分

* Copyright (c) 2011, 烟台大学计算机学院学生

* All rights reserved.

* 文件名称:paixu.cpp

* 作 者:宋本一

* 完成日期:2011 年 12 月 02 日

* 版 本号:v15.1

* 对任务及求解方法的描述部分

* 输入描述:要排序的数据在程序中初始化

* 问题描述:实现冒泡排序

* 程序输出:排序后的结果

* 程序头部的注释结束(此处也删除了斜杠)

#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)函数;

void bubble_sort(int arr[], int num)

{
int i,j,st;
for(i=0;i<num-1;i++)
for(j=0;j<num-1-i;j++)
if(arr[j]>arr[j+1])
{
st=arr[j];
arr[j]=arr[j+1];
arr[j+1]=st;
}

}

//定义void output_array(int arr[], int num)函数;

void output_array(int arr[], int num)

{
int i;
cout<<endl;
for(i=0;i<num;i++)
{
cout<<arr[i]<<" ";
if((i+1)==0)cout<<'\n';
}
cout<<'\n';

}

运行结果:





经验积累:

1. 数组名作形式参数,将能改变作为实际参数的数组的值,实际参数传递给形式参数的是数组的地址值,也是传值;

2. 形式参数中不指定数组大小,实际数组的大小也一并作为参数传递;

上机感言:

学会了冒泡排序法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ output 算法 任务 c