C语言几种常用语句用法

一、分支语句

if(表达式);  //单分支
    {
    //表达式为真(非零),则执行此处代码
    }
    if(表达式)  //双分支
    {
        //表达式为真(非零),则执行此处代码
    }
    else
    {
        //表达式为假(零),则执行此处代码
    }
    if(表达式1)  //多分支
    {
        //表达式1为真(非零),则执行此处代码
    }
    else if(表达式2)
    {
        //表达式2为真,则执行此处代码
    }
    else if(表达式3)
    {
        //表达式3为真,则执行此处代码
    }
    else
    {
        //如果以上所有表达式都为假,则最后执行此处代码
}

二、switch开关分支语句

switch(n) //n可以是数值、表达式,运算结果必须是整数
    {
        case val:   //如果val==n,则打开执行开关
                    //val必须是常量
            ...
            break;  //关闭执行开关,结束switch
            //如果每个case后都加break,形成了分支结构
            //switch中不能使用continue配合
           //case a ... b:  可以表示[a,b],但是只有GNU编译器才支持该语法,不建议使用
        case val1:
            ...
        default:
            //如果所有的case都没有打开,则最后打开default,并且放在任何位置都可以最后打开
    }

三、for循环语句

    循环就是一种让代码反复执行的方法,到达你想要效果

    for循环是一种非常灵活、变样多样且危险(相比其他循环)的循环

    for一般使用一个变量来引导循环的执行,该变量叫做循环变量i

for([1];[2];[3])
    {
        [4]
    }

    [1]、给循环变量赋初值,C99以上标准才可以在此处定义循环变量 -std=gnu99

    [2]、判断循环变量是否到达边界,如果没到达,进入循环

    [4]、被反复执行的代码,称为循环体

    [3]、改变循环变量,防止出现死循环,一般对循环变量进行自加、自减

    1、2、4、3、2、4、3...

    大括号问题:

        1、建议上下对齐

        2、如果循环体中只有一行代码,大括号可以省略

            但是不利于扩展,一般的商业代码都要求大括号不能省略

    for循环各种写法:

for(;;)
    {
        //  死循环
    }
    int i=0;
    for(; i<10; i++)
    {
    }
    for(int i=0; ; i++)
    {
        if(i >= 10)
        {
            break;
        }
    }
    for(int i=0; i<10;)
    {
        ...
        i++;
    }

四、while循环语句

while(表达式)
    {
        // 循环体
    }

    当表达式为真时执行循环体,执行完后重新判断表达式,以此类推,直到表达式为假,结束循环

    while相当于for的精简版本    for(;表达式;)

    for循环专门负责解决明确知道循环次数的问题

    while循环专门负责解决不确定循环次数的问题

五、do-while 循环语句

    do{

        //  循环体

    }while(表达式); //表达式为真循环继续,为假结束循环

    先执行循环体,再判断循环条件,该循环体至少执行一次

    适合先干活、后检查的特殊情况,例如输入密码、文件内容判断

六、循环嵌套

    循环语句中包含了循环语句

外层循环执行一次,内存循环执行n次

七、跳转语句

    goto

        可以在函数内任意跳转

        标签名:

            ...

            goto 标签名;

        它可能会破坏已经设计好的分支或者循环结构,因此绝大多数公司禁止使用goto

        但是在驱动编程时特别时候处理异常

    

    break

        1、在switch中关闭case执行开关

        2、跳出循环,只能跳出当前一层循环

    continue

        结束本次循环,进入下一次循环

    return

        1、结束函数的执行,程序跳转回函数调用的地方继续执行

        2、可能返回一个数据给函数的调用者

  • 补充(数据类型转换)

 只有相同类型的数据才能运算,如果类型不相同的数据需要先转换相同类型后再进行计算。

    自动类型转换:

        转换规则:

            以不丢失数据为基础,可以适当地牺牲一些空间

            1、字节少的向字节多的转

            2、有符号的向无符号的转

            3、整型向浮点型转

            注意:char short如果与不同类型的数据运算时,会先提升为int类型后参与运算

    强制类型转换:

        (新类型名)数据;

        这种方式有可能会丢失数据,慎重使用