您的位置:首页 > 编程语言 > C语言/C++

20170131C语言提升03_条件语句

2017-01-31 13:22 190 查看

1:复习:

    数据类型最大的作用就是确定内存大小。

自定义数据类型:

    typedef和define的区别:在定义指针类型的时候define可能出错,typedef有类型检测,更安全。

    enum:常用来定义组合在一起的常量。

    struct:常用来组织数据结构,有数据对齐,不要定义空结构体

    union:一般用来判断大小端。

属性:

    auto:编译器默认的分配方式,数据将分配在栈区。全局变量无法使用。
    static:存储在静态区,只初始化一次,可以修饰函数,主要用来控制作用域。
    register:存储与寄存器,无法取得地址,不一定申请成功,全局变量无法使用。
复习生命周期,作用域以及void和void*。

2:如何让选用数据类型:

    1:选用标准:
        1:根据运行速度:和CPU等宽的最快,系统默认类型浮点类型就是double。默认的更快。
        2:根据场景:选择合适的类型,根据有无符号,表现类型。活用typedef。

3:如何区别if和switch的使用场景:

    流程控制分为分支类和循环类。其中分支类有if,switch。循环类有for,while,do…while,goto(禁止使用),break(跳出当前快),continue(直接进入下次循环)。
    if和switch的区别:if可以代替switch,但是if…else过多的时候会导致代码难以阅读。一般分支在超过三个以上,并且可以方便的使用switch的话就是用switch。switc下每个分支一般都要有break。有时候也故意不写break让几个分支一起执行。

4:如何使用if判断浮点数:

    if语句多数用在判断true和false以及一些整数。判断浮点数的时候要通过区间来进行判断。例如:
#include"stdio.h"
#define EPSINON 0.0000001
int main()
{
double d_x = 0.0;
if(-EPSINON<=d_x&&d_x<=EPSINON)
{
printf("d_x = 0.0");
}
return 0;
}


这样的操作相当于把小数第七位以后的全部舍去了,浮点数判断一定是区间的判断,这点一定要记清楚。

5:循环讲解:

    for:里面有三个语句,也属于判断在前的语句,可能一次都没执行。一直次数就用for循环
    while:先判断,再执行循环体,可能一次都没执行。已知动态条件一般用while
    do…while:先执行语句,在进行判断(语句至少执行一次)。在里面可以判断,如果有不符合条件的地方就直接break跳出循环,跳到统一出口的地方。他可以进行统一出口的设置。

6:break,continue语句:

    循环语句总是反复执行一些事情,我们就需要有语句来破坏循环的进行goto,continue,break。
    goto:相当于强制地跳转,永远不要使用goto。goto会破坏整个程序的逻辑,而非仅仅是循环的逻辑。
    continue:只能运用于循环体内,他是跳过当前本次循环,执行下次循环。本次循环下的后面代码将不会被执行。
    break:指的是跳出当前的块。可以和switch和if配合使用。跳出当前整个循环。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编程 c语言