关于c:C语言学习笔记分支结构程序之if语句

40次阅读

共计 1638 个字符,预计需要花费 5 分钟才能阅读完成。

分支构造程序之 if 语句

家喻户晓,C 语言是一种结构化程序设计语言。程序并不会总是执行同样的解决,例如程序会通过条件判断的后果选择性执行某种解决。接下来咱们一起学习依据条件扭转程序运行流程。

if 语句 1

#include<stdio.h>
int main()
{
    int n;
    // 输入一个整数
    scanf("%d",&n);
    // 条件判断 0 为假 非 0 为真
    if(n%5)
        printf("输出的数字不能被 5 整除 \n");
    return 0;
}

if(表达式)语句会判断表达式的值,如果表达式的值非 0,则会执行相应的语句;()中的表达式称为管制表达式,满足此表达式,后续语句则会则行,否则不执行。

if 语句 2

#include<stdio.h>
int main()
{
    int n;
    // 输出一个整数
    scanf("%d",&n);
    // 判断奇偶
    if(n%2==0)
        printf("这个数是偶数 \n");
    else
        printf("这个数是奇数 \n");
    return 0;
}

if(表达式) 语句 1,else(表达式)语句 2

else 是否则的意思,当表达式 1 的值不为 0 的时候执行语句 1,否则执行语句 2;

‘==’ 为相等运算符,属于双目运算符,对左右两侧的操作数进行比拟;与之对应的运算符是不等运算符‘!=’

if 语句 3

#include<stdio.h>
int main()
{
    int m,n;
    // 输出两个整数
    scanf("%d %d",&m,&n);
    // 判断大小
    if(a>b)
        printf("a>b\n");
    else if(a<b)
        printf("a<b\n");
    else
        printf("a=b\n");
    return 0;
}

if(表达式 1)语句 1,else if(表达式 2)语句 2,else(表达式 3)语句 3;

表达式 1 的值不为 0 时,执行语句 1,否则判断表达式 2 的值,若不为 0 则执行语句 2,若为 0 则执行语句 3;

‘>、<’为关系运算符,为双目运算符,对两侧操作数进行比拟。其余的关系运算符还有‘<=、>=’

条件运算符语句

#include<stdio.h>
int main()
{
    int m,n,max;
    // 输出两个整数
    scanf("%d %d",&m,&n);
    // 判断大小 
    max = m>n?m:n;
    printf("%d",max);
    return 0;
}

条件运算符属于三目运算符,须要三个操作数;a?b:c 若表达式 a 的值不为 0,则后果为 b, 否则后果为 c

复合语句

#include<stdio.h>
int main()
{
    int m,n,max,min;
    printf("%d %d",m,n);
    if(m>n)
    {
        max = m;
        min = n;
    }
    else
    {
        max = n;
        min = m;
    }
    printf("最大值是 %d, 最小值是 %d",max,min);
    return 0;
}

下面程序中的 if 语句在大括号内的语句称为复合语句或程序块;用 {} 括起来的复合语句也会被看做繁多的语句。

逻辑运算符语句

#include<stdio.h>
int main()
{
    int month;
    scanf("%d",&month);
    if(month >= 3 && month <= 5)
        printf("%d 是秋季 \n");
    else if(month >= 6 && month <= 8)
        printf("%d 是冬季 \n");
    else if(month >= 9 && month <= 11)
        printf("%d 是秋季 \n");
    else if(month == 1 || month == 2 || month ==12)
        printf("%d 是夏季 \n");
    else
        printf("%d 月不存在 \n");
    return 0;
}

上述语句应用的“&&”和“||”称为逻辑运算符;

“&&”运算符对左右两侧操作数进行判断,若两侧操作数都不为 0,则后果为 1,否则为 0;

“||”运算符对左右两侧操作数进行判断,若两侧操作数都为 0,则后果为 0,否则为 1;

“&&” 和“||”运算符存在短路求值:

“&&”运算符在左操作数的判断后果为 0 时不会对右操作数进行判断

“||”运算符在左操作数的判断后果为 1 时不会对右操作数进行判断

正文完
 0