码迷,mamicode.com
首页 > 编程语言 > 详细

C语言之通过冒泡排序浅谈编程思想

时间:2014-07-24 21:21:17      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   数据   for   re   c   

  写这篇博文的目的是想起到抛砖引玉的作用,还请大牛们留下一些先进的思想,让小菜学习一下。下面入正题。

      复习C语言怎么能少的了冒泡呢,记得刚学C语言那会,感觉冒泡排序真的太复杂了,理解不大了,嗯!还是当时的功底不够啊。当时一些冒泡都头疼,感觉这么多的循环(哈哈!!其实也就俩,当时就是感觉太复杂)。现在再写冒泡排序,感觉自己当时学C语言的时候是不是太笨了呢。

  仔细想想,之前写冒泡之所以感觉到难是没有真正的理解冒泡的思想,就硬着头皮写,结果可以想象,是以失败而告终的。现在写代码也有一段时间了,学的编程语言也有几门了,现在想想编程更多的是一种思想。而编程语言就是一种工具,如果你有思想了,用什么语言去解决问题都是可以的。编程思想大概就是大家所谓的编程算法吧。在编写东西之前,如果你的思路清晰,目标明确,那么你在写程序的时候也会行云如流水,Bug的数量也会骤减。相反,如果你在编写程序之前,思维混沌,思路模糊,在编写程序的时候会感觉到非常的吃力,Bug自然而然的就回增多的。

  在编程之前要明白一个道理,是计算机是非常傻的,但计算机不笨。计算机之所以傻,就是你让他干嘛他干嘛。从而想一下,如果你本身的思路就不明确,不清晰,那么有如何去给计算机下指令呢?

  下面就以冒泡排序为例,同时复习一下简单的冒泡排序。

  写冒泡排序我本人喜欢从后往前把小的冒出来,当然了也可以把大的从前往后冒,当然了这两种方法都ok了。其实冒泡排序这个名字起的时非常的形象生动的。排序的过程就像是一个个水泡从水底往上冒。每排一次序就有一个较小的数冒出来。

  代码如下:

//冒泡排序
void sort(int array[], int length)
{
    //交换时使用的临时变量
    int temp = 0;
    //循环数据
    for (int i = 0; i < length; i++)
    {
        //从后往前冒
        for (int j = length - 1; j > i; j--)
        {
            //符合条件的交换
            if (array[j] < array[j-1])
            {
                temp = array[j];
                array[j] = array[j-1];
                array[j-1] = temp;
            }
        }
    }
    //调用封装好的数组输出函数
    print_array(array, length);
}

  小菜ps:知识是用来分享的嘛,大牛们不要吝啬哦!

C语言之通过冒泡排序浅谈编程思想,布布扣,bubuko.com

C语言之通过冒泡排序浅谈编程思想

标签:style   blog   color   使用   数据   for   re   c   

原文地址:http://www.cnblogs.com/ludashi/p/3865030.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!