【C语言】if语句

2024-05-26 10:17:00 浏览数 (2)

C语言的if语句

if语句

语法
  • if(表达式) 执行语句 例如:
代码语言:javascript复制
#include<stdio.h>
int main()
{
    int a = 0;
    scanf("%d", &a);
    
    if (a < 10)
        printf("Hello");
    
    return 0;
}

本段代码会让你输入一个值并赋给a,然后进入if语句进行判断,如果a的值小于10,则会执行打印的任务,反之不执行。

  • if语句在没有{ }情况下只控制一行代码,加入{ }可以执行该代码块
  • if语句为分支语句
  • if()中()内的判断为真假的判断,为真执行,为假不执行。
if语句中的else

else在这里表达的意思与英语语法相似,即表示反之,同样我们举例

代码语言:javascript复制
#include<stdio.h>  
int main()
{
    int a = 0;
    scanf("%d", &a);
    
    if (a < 10)
        printf("Hellon");
    else
        printf("Hin");
    
    return 0;
}

我们可以发现,在原有代码上又增添了else,这个表示在if语句中条件不成时,执行else控制的语句

  • 与if语句类似,在没有{ }情况下只控制一行代码,加入{ }可以执行该代码块
嵌套if语句

嵌套是代码中常用的方法,在if语句中可以进行嵌套。 例如:

代码语言:javascript复制
#include<stdio.h>
int main()
{
    int a = 0;
    scanf("%d", &a);
    
    if (a < 10)
    {
        printf("hello");
        if (a > 5)
        {
            printf("world");
        }
    }
    
    return 0;
}

在该代码块中进行了两层的if语句嵌套,首先外层if语句对a进行判断,如果小于10,则执行if语句,然后便打印“hello”,接着再进行内部if语句的判断,即如果大于5,便执行该if语句的代码。

  • 值得注意的是,else在多层嵌套语句中与最近的if进行匹配,与和谁对齐无关。
  • 例如(我们摘取上面中部分代码):
代码语言:javascript复制
    if (a < 10)
    {
        printf("hello");
        if (a > 5)
        {
            printf("world");
        }
        else
            printf("china");
    }

我们可以看到else与外部if对齐,但是如果我进行调试便会发现打印“China“的条件为小于10且小于等于5,由此可以证明else与内部if匹配,即与最近的if进行匹配。

  • 有趣的是这种多重的if嵌套可以进行简化
  • 例如:
代码语言:javascript复制
    if (a < 10)
    {
        printf("hello");
    }
    else if (a > 5)
    {
        printf("world");
    }
    else
    {
        printf("china");
    }
  • 这种else if语句表示在上一if语句不成立时再进行判断。
关系操作符

在if()中的()里进行判断有多种形式

  • == 相等操作符
  • < 小于操作符
  • > 大于操作符
  • <= 小于等于操作符
  • >= 大于等于操作符
  • != 不相等操作符

以上内容为C语言中if语句的基本使用和语法,通过这些基础知识点,我们可以进行简单的条件判断和分支选择,为编写更复杂的程序打下基础。在实际编程中,灵活运用if语句和其他控制结构,可以有效地提高程序的逻辑性和灵活性。

0 人点赞