C零基础课程-12-if-else分支结构

Posted shellmad

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C零基础课程-12-if-else分支结构相关的知识,希望对你有一定的参考价值。

if语句的基本结构

if是分支结构语句,它可以根据条件的不同,执行、或者不执行某个语句(块)。
对于执行分支只有一行的情况,if语句的基本组成是:

    if(条件表达式)
        条件成立将要执行的语句;
#include <stdio.h>

int main(int argc, char* argv[])
{
    int nValue = 0;
    scanf("%d", &nValue);
    if (nValue > 100)
        printf("你输入了一个大于100的数字
");
 return 0;
}

对于执行分支有多行,则需要使用花括号括起,表示是语句块:

if(条件表达式)
{
    条件成立时要执行的语句块;
}
#include <stdio.h>

int main(int argc, char* argv[])
{
    int nValue = 0;
    scanf("%d", &nValue);

    if (nValue > 100)
    {
        printf("你输入了一个大于100的数字
");
        printf("这是我条件成立时的第二个语句
");
    }

 return 0;
}

if...else语句

当if表达式为真时,会执行紧接着的语句(块),如果使用else语句,则当if条件为假时,会执行else之后的语句(块)

#include <stdio.h>

int main(int argc, char* argv[])
{
    int nValue = 0;
    scanf("%d", &nValue);

    if (nValue > 100)
    {
        printf("你输入了一个大于100的数字
");
        printf("这是我条件成立时的第二个语句
");
    }
    else
    {
        printf("你输入了一个不大于100的数字
");
    }

 return 0;
}

else if语句

可以使用else if语句,实现多重判断

#include <stdio.h>

int main(int argc, char* argv[])
{
    int nValue = 0;
    scanf("%d", &nValue);

    if (nValue > 100)
    {
        printf("你输入了一个大于100的数字
");
        printf("这是我条件成立时的第二个语句
");
    }
    else if (nValue > 50)
    {
        printf("你输入了一个不大于100的数字
");
        printf("但是你输入的数字大于50
");
    }
    else
    {
        printf("你输入的数字不大于50
");
    }

 return 0;
}

要注意else 与if的配套原则:else总是与上方最近的一个未配对的if配对。
实例
(如上)

if语句的嵌套

if语句是可以嵌套的,比如,要解决:判断一个数字既能被3整除,又能被7整除。

#include <stdio.h>

int main(int argc, char* argv[])
{
    int nValue = 0;
    scanf("%d", &nValue);

    if (nValue % 3 == 0)
    {
        if (nValue % 7 == 0)
        {
            printf("这个数字既可以被3整除,又可以被7整除
");
        }
        else
        {
            printf("这个数字可以被3整除,不可以被7整除
");
        }
    }
    else
    {
        printf("这个数字不会被3整除
");
    }

 return 0;
}

以上是关于C零基础课程-12-if-else分支结构的主要内容,如果未能解决你的问题,请参考以下文章

机器学习专家系列精品课程零基础到精通

零基础学C语言知识总结七:函数知识总结

零基础学C语言知识总结七:函数知识总结

node.js零基础详细教程:mongodb数据库操作

好课分享零声·C语言/C++零基础入门精编版(最新C++17标准/语法/逆向/技巧)网盘完整高清

C零基础课程-06-printf进阶