C语言中的流程控制深入理解

论坛 期权论坛 脚本     
匿名技术用户   2020-12-23 03:31   31   0


1.流程控制内容的实质

流程控制的本质就是讲解7个关键字的用法,即if\switch\for\While\do……while\break\continue的具体用法

2.简述流程控制内容的重要性

1>C C++ C# Java中的流程控制一模一样

2>无论程序多么复杂,利用顺序,选择,循环这种思想可以解决所有的问题

3>在sql,oracle数据库中也是顺序,选择,循环这种思想,只是相应的语法不同而已

3.什么是流程控制

流程控制就是程序代码执行的顺序

程序代码执行的顺序在整体上一定是从上向下进行执行的,但是并不是单纯的从上向下进行执行,有的代码可能不执行,有的代码可能循环执行

4.简述流程控制的分类以及相应的定义

流程控制分为顺序,选择,循环三种结构

选择:某些代码可能执行,也可能不执行,有选择的执行某些代码,包括if和switch两种用法

循环:某些代码会被重复的执行,包括for,while,do……while三种用法

5.简述流程控制中5个关键字的相同点

相同点:if switch \for while do……while默认只能控制一个语句的执行或不执行,如果想控制多个语句的执行或不执行,就必须用{}将这些语句括起来

6.简述循环中三个关键字for/while/do……while用法的相同点

只有当表达式不成立的时候才跳出循环,相当于for循环中的2不成立的时候才跳出循环,否则会一直循环下去,注意死循环的问题

7.简述if的三种用法

1>if最简单的用法是: if(表达式)

语句1;

即如果表达式为真,执行语句1;如果表达式为假,则语句1不执行

2>if最常用的是:if(表达式)

语句1;

else

语句2;

3>if最全的用法是:if(1)

语句1;

else if(2)

语句2;

else if(3)

语句3;

else

语句4;

8.简述if……else if……else if……else用法的注意事项

1>整体上这是一个语句,因为只有一处会被执行,若1与2同时成立,则只能执行语句1,因为这个时候不存在否则的情况了

2>有if的地方必然有()出现,有else的地方必然无()出现,但是后面可以有{}的出现

3>在C语言当中没有以else开头的语句,else的使用必须匹配if的使用

4>如果不存在最后一行else的话,则语法上不会出错,但是逻辑上有问题

9.简述对算法的理解

程序 = 算法 + 语言;其中算法就是解题的思路

C语言中的算法并没有什么实际意义,真正的算法要学习数据结构

10.如何看懂一个程序

1.流程 2>每个语句的功能 3>试数[所谓试数就是用计算机思维验证算法的正确性]

最后看懂程序,能够自己进行独立的编写

11.简述C语言当中空语句的问题

C语言当中,只要是一个分号,就是一个语句

if(3>2) ;

表示如果表达式成立,则执行空操作

12.简述选择当中switch关键字的用法

格式:

Switch(表达式)

{

Case 常量表达式1:语句 1;

Case 常量表达式2:语句 2;

Case 常量表达式3:语句3;

Default :语句 4;

}

switch的用法当中,先找到程序的入口,一旦找到程序的入口,case将被屏蔽,整个程序将会顺序的从上向下进行执行,所以switch本质就是半个选择项

13.简述循环当中三个关键字for\while\do……while的具体用法

For循环的具体用法:

1>在循环当中,for循环用的最多,逻辑最清晰,难度最大

For循环的格式为:for(1;2[表达式];3)

{ 执行体 }

For循环的注意事项:

1> 语句1永远只执行一次

2> 2标志着一次循环的开始,3标志着一次循环的结束

3> for循环执行多少次,可以由语句1与语句2计算出来

4>在for循环当中,无论后面跟着几个语句,通常会跟着一个{},以此增强程序的逻辑性

While循环的具体用法:

格式: while(表达式)

{ 执行体 }

注意:只有当表达式不成立的时候,循环才会结束,否则会一直执行下去

Do……while的具体用法是:

格式: do

{

}while (表达式);

注意:注意:只有当表达式不成立的时候,循环才会结束,否则会一直执行下去

14.简述for/while/do……while三种循环在逻辑上的关系

1>for与while在逻辑上完全等价,两者可以相互转化

For(1;2;3)

{执行体}

等价于:

1;

While(2)

{

执行体;

语句3;

}

2>do……while不等价于while,当然也不等于for,do……while主要用于人机交互

15.简述强制类型转换的用法

强制类型转换的格式为:(数据类型)(表达式)

功能:将表达式的数值强制转化为前面数据类型的数值

:(int *)malloc(100);

16.为什么循环中更新的变量不能定义成浮点型变量

因为浮点型变量不能保证精确的存储一个数据,即用户输入的数值和用户输出的数值不一样

17.简述break和continue关键字的具体用法

Break的具体用法:

Break是用来终止距离它最近的且包裹它的循环[for while do……while]和switch语句的

1>break如果用于循环,是用来终止循环的

2>break如果用于switch,是用来终止switch的

3>break只能用于循环和switch语句,不能用于if,除非if属于循环内部的一个子句

Continue的具体用法是:

1>continue针对的是循环,而不是if

2>continue语句执行完以后,将会跳过本次循环余下的语句,转去判断是否需要执行下一次循环,并不是终止整个循环

18.简述前自增和后自增的异同点

前自增: k = ++i;

后自增: k = i++;

相同点:最终都使i的数值加1;

不同点:前自增整体表达式的数值是i+1之后的数值

后自增整体表达式的数值是i+1之前的数值

要求:编程的时候应该尽量屏蔽掉前自增和后自增的区别

19.简述高精度与低精度的运算

高精度与低精度的运算结果为高精度

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP