`
javaitface
  • 浏览: 17210 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
最近访客 更多访客>>
社区版块
存档分类
最新评论

怎样编程 .

 
阅读更多
  from:http://blog.csdn.net/stunt/article/details/6899866


楼主的整理的确是一个重要的一环——基础。但是,我认为我认为还有一环——应用能力,更重要。试想,当我们熟知了C语言了的规则了以后,却还是连一个使用的程序都写不出来,甚至不能看懂别人写的一个播放器程序,那么这些关于c规则的学习又有什么意义呢。所以要用,一定要在用的过程中专研。所以不要动不动谈语言的特性和语法规则。比如,我们经常说c语言数组越界问题。这算是一种语法规则(或者漏洞)还是一种可以利用的特性。据我所知,有一种病毒就是利用这个特性来越过系统的密码的。所以我们千万不能单独谈语言本身及其特性。


程序从哪里来的?

怎样编写程序呢?

初学者应该对这些问题有所体会,只有思考了这些问题,才能在“理论”的指导下学习编程。

编写程序的过程为:先用超级计算机“我们的大脑”分析问题,找出解决问题的步骤,再翻译成C语言程序,最后再调试执行对比分析。

编程的关键在于明白一个道理:“C程序只是模拟了我们解决问题的过程”。

一定要自己分析问题,找到解决问题的方法,才能动手写代码,通过调试执行程序应该是体会“程序如何模拟了手工解决问题的过程。”

解决问题的步骤就是算法。

问题的解法可能有多种,行之有效的方法通常与欲使用的工具相关,也就是说,必须结合工具的特点思考问题的解法。

计算机解决问题主要靠循环!毫不夸张地说,思考问题的解法就是考虑“如何构造循环”。

循环是有条件的重复,是“螺旋式上升”,是“波浪式前进”。

综上所述,编程就是分析问题,找出问题解决步骤中的重复,把重复构造成循环,最后通过调试执行程序,体会程序如何模拟了手工解决问题的过程。

下面用实例分析的过程省略!

总结:

C程序只是模拟了我们解决问题的过程!

思考问题的解法就是考虑“如何找出重复,如何构造循环”!

解决复杂问题要注意思维的层次,即“自顶向下,逐步求精”!

一写复杂问题的解法可用“递归算法”,即“更高级的循环”!

初学者的编程主要为:构造循环;写递归函数。

注意:

这里讨论的是何谓编程。对于计算机专业的学生,还有一门称为“算法”的专业课程,以及ACM竞赛等等。

“算法”课程只是总结了解决问题时一些常用的行之有效的做法,当然了这些问题通常都有一定的难度;对于同一个问题的不同做法,也会分析比较它们之间的差异。因此,算法只是编程经验的总结,“算法”也只是我们手工解决问题的过程的模拟。程序有大小之分,本质上没有什么区别。

在学习C语言时掌握了编码的实质,体会到了“自顶向下,逐步求精”,体会到了“递归算法”,“算法”课程也不过尔尔。

在此,我还想强调:

知识的关键不在于你是否知道,而在于你是如何获得的。知识只是能力的载体,只了解了知识,没有体会到其中的能力,只能是舍本逐末!

对于教育(学习),效率是个关键!我们不能通过“研究”获得别人已经创造出的知识,这样做效果最佳,但效率太差;可我们也不能为了学习效率只是获得答案,如何“研究性”地学习知识,既有效果又有效率,考验我们每个人的教学(学习)能力。

融“创造”于“学习”,何愁自己没有“创造性”。
分享到:
评论

相关推荐

    深入Windows通信编程.docx

    1. 怎样用 Windows 未提供的波特率通信? 解决方法是采用"蒙混过关"的办法:首先,以任一 Windows 支持的波特率(例如 300bps)构造通信参数字符串,调用 BuildCommDCB 产生 DCB 数据结构;然后,调用 SetCommState...

    计算机软件-编程源码-怎样用asp和com进行web编程.zip

    本资源“计算机软件-编程源码-怎样用asp和com进行web编程.zip”包含了一套关于如何利用ASP和COM进行Web编程的源代码,对于学习和理解这两种技术的结合应用具有极高的价值。 ASP是一种由微软开发的服务器端脚本环境...

    UNIX网络编程.卷1:套接字联网API(第3版)

    顶级网络编程专家bill fenner和andrew m. rudoff应邀执笔,对w. richard stevens的经典作品进行修订。书中吸纳了近几年网络技术的发展,增添了ipv6、sctp协议和密钥管理套接字等内容,深入讨论了最新的关键标准、...

    怎样用ASP和COM进行Web编程.rar_Asp Com_COM_asp c_com 编程_com编程

    ASP(Active Server Pages)与COM(Component Object Model)在Web编程中的结合使用是早期Web应用程序开发的常见方式,尤其在Windows服务器环境下。这种技术允许开发者创建动态、交互式的Web页面,利用COM组件来扩展...

    linux 网络编程源代码

    第一章 概论 ..................................................................................................................1 1.1 网络的历史.............................................................

    学编程前景怎么样.pdf

    学编程前景怎么样.pdf

    C# 区块链编程.pdf

    本书将带你从区块链的基本应用走向高级应用。他不会教你如何使用API。...面向API编程可以帮你快速实现应用。但是开发者的创新性就被限制了,开发者了解区块链将有能力,充分挖掘开发区块链的潜力。

    c与c++嵌入式系统编程.pdf

    这就导致了嵌入式系统编程的涉及面很广,而且可能会需要很多年才能掌 握它。不过,几乎所有的嵌入式软件开发都使用了C 语言。这本书就是要教你 怎样在嵌入式系统中使用C 和C 的派生语言,C++。 即使你已经...

    精彩编程与编程技巧-怎样限制鼠标移动...

    标题“精彩编程与编程技巧-怎样限制鼠标移动”明确地指出了文章的主题:介绍一种编程技巧,即如何通过编程手段限制鼠标在屏幕上的活动范围。这对于游戏开发、特殊应用软件设计等领域来说,是非常实用的一项技能。 #...

    13.实战:怎样用ChatGPT编程?.pdf

    13.实战:怎样用ChatGPT编程?.pdf

    《人月神话》布鲁克斯.扫描版.pdf

    编程系统产品...............................................................................................................................1 职业的乐趣....................................................

    精彩编程与编程技巧-字体闪烁...

    ### 知识点总结 #### 一、项目背景与目标 在本次的“精彩编程与编程技巧—字体闪烁...同时,这种基于事件的编程模式也是现代GUI编程的一个重要组成部分,掌握了这一点对于学习其他编程语言和开发环境也有很大的帮助。

    Visual C++ MFC编程实例.PDF

    本书通过85个实例全面讲述了应用MFC进行Visual C++编程的思想。每个实例均以编写一个应用程序要走的步骤编写。全书共分四部分进行介绍,第一部分是基础知识,第二部分讲述用户界面的实例,第三部分讲述MFC内部处理...

    Linux网络编程

    6.4.3 一个套接字是怎样在网络上传输数据的?......... 143 6.5 套接字的一些基本知识... 144 6.5.1 基本结构............ 144 6.5.2 基本转换函数..... 145 6.6 基本套接字调用........... 147 6.6.1 socket() 函数...

    面向接口编程详解借鉴.pdf

    面向接口编程是一种编程范式,它基于面向对象编程的思想,但更强调通过接口来定义对象的行为,而不是具体实现。接口在这里扮演着规范和契约的角色,定义了一组方法签名,但不包含任何实现代码。这种编程方式允许代码...

    VB编程中,全选命令该怎样编写.txt

    VB编程中,全选命令该怎样编写.txt

Global site tag (gtag.js) - Google Analytics