第16周报告1(任务2):冒泡排序算法(指针)

来源:互联网 发布:知乎 装修网站 编辑:程序博客网 时间:2024/06/08 19:58
实验目的:学会冒泡排序算法实验内容:实现冒泡排序算法,并将之定义为一个函数,其中参数是指向数组的指针变量* 程序头部注释开始* 程序的版权和版本声明部分* Copyright (c) 2011, 烟台大学计算机学院学生* All rights reserved.* 文件名称:学会冒泡排序算法                             * 作    者:薛广晨                             * 完成日期:2011   年  12     月   07     日* 版本号: x1.0        * 对任务及求解方法的描述部分* 输入描述:要排序的数据在程序中初始化* 问题描述:实现冒泡排序* 程序输出:排序后的结果* 程序头部的注释结束(此处也删除了斜杠)#include <iostream>using namespace std;void bubble_sort(int *p, int num);  //不要对自定义函数的声明有任何改动void output_array(int *, int);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 *p, int num){    int i,j,t; for (j=0; j<num-1; j++)  for (i=0; i<num-1-j; i++)   if (*(p+i)<*(p+i+1))   {    t=*(p+i);                *(p+i)=*(p+i+1);                *(p+i+1)=t;   }}void output_array(int *x, int num){ int i; cout<<"the sorted numbers :"<<endl;    for(i=0;i<=num-1;i++)  cout<<*(x+i)<<" ";        cout<<endl;}

运行结果:



经验积累:
1.指针很重要啊,好好学习
2.好好看课本
3.

上机感言:指针也很好写,与数组有点相似