1、计算机程序的基本理解
经常听别人说在计算机上写程序,写代码,那你知道什么是计算机程序么?
计算机程序,最简单的理解,其实就是“数据结构+算法”的综合体,这也是最经典的关于计算机程序的一种表述。那什么是数据结构呢?什么又是算法呢?假设让计算机处理某个任务,数据结构就是在该任务中抽象出来的可运算的一堆数据,这堆数据可以输入到计算机中,算法则是对这堆数据进行加工整理及计算的法,以达到完成任务解决问题的目的。
由此可,在计算机程序中,数据结构是基础(基本部件),而算法则是灵魂(完成任务)。
2、数据结构及其表示形式
数据结构在程序中负责管理及存储各种数据,根据数据的复杂程度,可分为基本数据类型和复合数据类型。为方便说明,下面以C语言为对象进行说明。
计算机中能够处理的基本数据类型包括:字符型、整型、单精度浮点型、双精度浮点型和空类型。在不同的操作系统或硬件平台中,这些数据类型的取值范围和所占的内存大小又有所不同。除void类型外,基本类型的前还可以加各种修饰符,来改变基本类型的意义,以便更准确地适应各种情况的需求。如signed、short、long和unsigned等修饰符可于字符和整数两种基本类型,而long修饰符还可用于double。unsigned和signed修饰符分别表正负值符号和有正负值符号的数据类型。
而复合数据类型是在基本数据类型的基础上,进一步组合演变来的能够存储复杂的数据结构,如C/C++语言中的数组、结构体、共用体(联合体)、位域和枚举、甚至指针类型等。
3、算法与流程图
算法是在计算机上为完成特定的任务,对数据结构进行加工处理的方法。而方法的具体实现过程可用流程图来进行描述。计算机程序中的每个处理步骤都可个何图形表,如矩形表般的赋值或计算,菱形表判断。流程之间线连接,并且使箭头标明程序的处理向。基本流程图的形状如下图所。
对于现代的高级编程语言如以C语为代表的结构化语,都提供了3种最基本的程序结构,分别为顺序结构、选择结构和循环结构。任何计算机算法都可化简为这3种基本结构的组合,基本结构间可以并,也可以相互包含,但是不允许交叉。
顺序结构顺序结构是简单的线性结构,各流程按顺序执。其流程图的基本形态如下图所,语句的执顺序为A-B-C。
选择结构选择结构判断语句实现。判断语句使程序的执变为两个路径,当判断的条件为真时,选择个路径执,当判断的条件为假时,选择另个路径执,如下图所示。
循环结构循环结构是指反复对某段代码的执,其基础为判断结构。执的代码称之为循环体,判断结构于根据某条件,判断是否继续循环。如C语言中的两种典型循环结构类型如下图所示,分别为while型循环和do-while型循环。
用流程图描述算法的样式主要包括两种图形结构方式,分别为N-S图法和PAD图法。
其中,N-S图法它由矩形组成,个程序模块是最外围的矩形外框,程序中的每个步都是个内嵌的矩形,如下图所示。该图没有使箭头表程序执的向,但也能准确定义程序的三种基本结构。它适合于设计系统程序,特别是分间相互独立的程序。
PAD图(ProblemAnalysisDiagram)是国际上专业的程序员泛使的种程序流程表示法。它更容易描述扁平化的程序结构。特别是些应管理类软件,其中都会有很多扁平化的分语句,这些语句PAD描述吏为清晰。如下图所示。
本文由编码那些事原创,请