C++学习 【3.1】 程序设计初步---算法、结构、赋值语句

学习《C++程序设计》(第二版)  谭浩强  主编

第三章  程序设计初步

3.1   基于过程的程序设计和算法

3.2   C++的程序结构和C++语句

3.3   赋值操作


3.1   基于过程的程序设计和算法

C++既可以用来进行基于过程的程序设计,也可以用来进行面向对象的程序设计。

基于过程的程序设计又称为过程化的程序设计

它的特点是:程序必须告诉计算机应当具体“怎样做”,也就是要给出计算机全部操作的具体过程。执行完这个过程,就实现了问题的求解。


基于过程的程序设计反映的是事物在计算机中的实现方式,而不是事物在现实生活中的实现方式

在基于过程的程序设计中,程序设计者必须指定数据在计算机中的表现形式,以及怎样对数据进行操作,以得到预期的结果


程序设计者不仅要考虑程序要“做什么”,还要解决“怎么做”的问题

要根据程序要“做什么”的要求,具体设计出计算机执行的每一个具体的步骤,写出一个个语句,安排好它们执行的顺序


怎样设计这些步骤,怎样保证它的正确性和具有较高的效率,这就是算法需要解决的问题


3.1.1算法的概念

一个基于过程的程序应包括以下两个方面内容:

1.对数据的描述,也就是数据结构

2.对操作的描述,也就是算法

总结起来,基于过程的程序可以用如下公式表示:

                             程序=算法+数据结构


计算机算法可以分为两大类:数值算法和非数值算法


无论基于过程的还是面向对象的程序设计,都离不开算法设计

在面向对象的程序设计中,在一个类中既有对数据的描述,又有对操作的描述,函数就是用来实现对数据操作的

数据时操作的对象,操作的目的是对数据进行加工处理

在考虑操作的过程中,任然要用过程化的方法,因此,必须学习和掌握一些常用的suanfa


对于不熟悉计算机算法的人来说,可以只使用别人已设计好的现成算法,只需要根据算法的要求给以必要的输入,就能得到输出的结果

对他们来说,算法如同一个“黑箱子”一样,他们可以不了解“黑箱子”中的结构,只是从外部特性上去了解算法的作用,即可方便地使用算法

但对程序设计人员来说,应当学会设计一些简单的算法,并且根据算法编写程序


3.1.2 算法的表示

常用的有4中:

1.自然语言

2.流程图

   用图的形式表示算法,比较形象直观,但修改算法时不方便,对比较大的、复杂的程序,画流程图的工作量很大,专业人员一般不用流程图表示算法,而喜欢用伪代码表示算法

3.伪代码

4.用计算机语言表示算法


3.2 C++的程序结构和C++语句

一个程序包含一个或者多个程序单位

每一个程序单位由以下3个部分组成:

1.   预处理指令:如#include指令和#define指令

2.   全局声明:在函数外对数据结构、函数以及变量的声明和定义

3.   函数:包括函数首部和函数体


如果一个变量在函数之外进行声明,此变量是全局变量,它的有效范围是从该行开始到本程序单位结束

如果一个变量在函数之内进行声明,此变量是局部变量,它的有效范围是从该行开始到本函数结束


C++程序最小的独立单位是语句(statement)

C++ 语句一般用分号结束,复合语句用右花括号结束


C++语句可以分为以下4种:

1.声明语句

   在C中,只有产生实际操作的才称作语句,对变量的定义不作为语句,而且要求对变量的定义必须出现在本块中所有程序语句之前

   在C++中,对变量以及其他对象的定义被认为是一条语句


2.执行语句

   通知计算机完成一定的操作。共包括:

1.控制语句,共9种:

1.  if( )~else~                  条件选择

2.  for(  )  ~ 

3.  while(   )   ~

4.  do  ~  while(  ) 

5   continue                     结束本次循环语句

6.  break                          中止执行switch或循环语句

7.  switch                         多分支选择语句

8.  goto                            转向语句

9.  return                           从函数返回语句

上面9种语句中的括号()表示其中包括一个判断条件,~表示内嵌的语句


2.函数和流对象调用语句

如:sort(x,y,z);

        cout<<x<<endl;

3.表达式语句


3.空语句

     只有一个分号的语句     ;

     有时用来做被转向点,或循环语句中的循环体 (循环体是空语句,表示循环体什么也不做)


4.复合语句                {        }


3.3   赋值操作

C++中的赋值号是一个运算符,可以写成a=b=c=d,而其他大多数语言不是

C++把赋值语句和赋值表达式区别开来,增加了表达式的种类,使表达式的应用几乎“无孔不入”,能实现其他语言中难以实现的功能

转载于:https://my.oschina.net/huangmc/blog/609073

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值