C_review_1

C语言回顾(一)

1.对编程的理解

编程不是在与计算机交谈,我们写的每一行代码都是在告诉计算机如何一步步地完成一件事情,至于如何让计算机把事情完成的快,完成的好,就是算法的优劣体现。

2.写代码前的工作

拿到一个问题,立马开始编写代码,这种做法在遇到简单问题时还能奏效,长期以来只会让思维简单化。下面结合经典书籍《C Primer Plus》中的编程七步,说说我的理解。

  • 明确问题的最终目标

    拿到问题先分析最终要达到什么效果,以这个效果发散开来

  • 设计实现方案

    编程三段式:需要什么输入,将会产生什么输出,中间将经过什么计算

    进而考虑以什么形式保存输入,考虑计算的方式,最后到考虑以什么形式输出结果

  • 编写代码

    在完成目标定义,提出初步的实现方案后,正式开始编写代码

  • 测试与调试

    一般来说程序难以一次成功,总有些问题,或显或隐,通过输入测试用例,打断点查看程序运行过程等方式

    检查程序中的bug

  • 借鉴与优化

    主要从两方面:代码与算法

    即使代码已能实现最终目标,但我的实现未必是最好的,此时参考他人的实现,吸取他人代码中的巧妙部分,

    再对自身代码进行改进(如数据的存储方式等)

    或者代码上已问题不大,但实现思路较复杂,借鉴他人的简洁思路,重新编写更优质的代码实现