C语言菜鸟入门·判断语句(if语句、if...else语句、嵌套if语句)详细介绍

目录

[1. if语句](#1. if语句)

[2. if...else语句](#2. if...else语句)

[3. if...else if...else 语句](#3. if...else if...else 语句)

[4. 嵌套if语句](#4. 嵌套if语句)


C 语言把任何非零非空 的值假定为 true ,把null 假定为 false

语句 描述
if语句 一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。
if...else语句 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。
嵌套if语句 您可以在一个 ifelse if 语句内使用另一个 ifelse if 语句。
switch语句 一个 switch 语句允许测试一个变量等于多个值时的情况。
嵌套switch语句 您可以在一个 switch 语句内使用另一个 switch语句。

1. if语句

C 语言中 if 语句的语法:

复制代码
if(判断条件)
{
   /* 如果表达式为真将执行的语句 */
}

如果布尔表达式为 true ,则 if 语句内的代码块将被执行。如果布尔表达式为 false,则 if 语句结束后的第一组代码(闭括号后)将被执行。

C 语言把任何非零非空 的值假定为 true ,把null 假定为 false

代码示例,条件满足:

复制代码
#include <stdio.h>

int main()
{
    /* 局部变量定义 */
    int a = 10;

    /* 使用 if 语句检查布尔条件 */
    if (a < 20)
    {
        /* 如果条件为真,则输出下面的语句 */
        printf("a 小于 20\n");
    }
    printf("a 的值是 %d\n", a);

    return 0;
}

条件不满足,将跳过if语句:

复制代码
#include <stdio.h>

int main()
{
    /* 局部变量定义 */
    int a = 10;

    /* 使用 if 语句检查布尔条件 */
    if (a < 9)
    {
        /* 如果条件为真,则输出下面的语句 */
        printf("a 小于 20\n");
    }
    printf("a 的值是 %d\n", a);

    return 0;
}

2. if...else语句

一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为 false 时执行。

C 语言中 if...else 语句的语法:

复制代码
if(判断语句)
{
   /* 如果布尔表达式为真将执行的语句 */
}
else
{
   /* 如果布尔表达式为假将执行的语句 */
}

如果布尔表达式为 true ,则执行 if 块内的代码。如果布尔表达式为 false ,则执行 else 块内的代码。

C 语言把任何非零非空 的值假定为 true ,把null 假定为 false

代码示例,条件满足:

复制代码
#include <stdio.h>
 
int main ()
{
   /* 局部变量定义 */
   int a = 10;
 
   /* 检查布尔条件 */
   if( a < 20 )
   {
       /* 如果条件为真,则输出下面的语句 */
       printf("a 小于 20\n" );
   }
   else
   {
       /* 如果条件为假,则输出下面的语句 */
       printf("a 大于 20\n" );
   }
   printf("a 的值是 %d\n", a);
 
   return 0;
}

条件不满足,将执行else语句:

复制代码
#include <stdio.h>
 
int main ()
{
   /* 局部变量定义 */
   int a = 100;
 
   /* 检查布尔条件 */
   if( a < 20 )
   {
       /* 如果条件为真,则输出下面的语句 */
       printf("a 小于 20\n" );
   }
   else
   {
       /* 如果条件为假,则输出下面的语句 */
       printf("a 大于 20\n" );
   }
   printf("a 的值是 %d\n", a);
 
   return 0;
}

3. if...else if...else 语句

一个 if 语句后可跟一个可选的 else if...else 语句,这可用于测试多种条件。

当使用 if...else if...else 语句时,以下几点需要注意:

  • 一个 if 后可跟零个或一个 else,else 必须在所有 else if 之后。
  • 一个 if 后可跟零个或多个 else if,else if 必须在 else 之前。
  • 一旦某个 else if 匹配成功,其他的 else if 或 else 将不会被测试。

C 语言中的 if...else if...else 语句的语法:

复制代码
if(判断条件1)
{
   /* 当布尔表达式 1 为真时执行 */
}
else if(判断条件2)
{
   /* 当布尔表达式 2 为真时执行 */
}
else if(判断条件3)
{
   /* 当布尔表达式 3 为真时执行 */
}
else 
{
   /* 当上面条件都不为真时执行 */
}

当if语句满足后将不在执行else...if以及else语句:

复制代码
#include <stdio.h>

int main()
{
	int a = 9;

	if (a<10)
	{
		printf("a 的值小于10\n");
	}
	else if (a<20)
	{

		printf("a 的值小于20\n");
	}
	else if (a<30)
	{
		printf("a 的值小于30\n");
	}
	else
	{
		printf("没有匹配的值\n");
	}

	return 0;
}

一旦某个 else if 匹配成功,其他的 else if 或 else 将不会被测试:

复制代码
#include <stdio.h>

int main()
{
	int a = 19;

	if (a < 10)
	{
		printf("a 的值小于10\n");
	}
	else if (a < 20)
	{

		printf("a 的值小于20\n");
	}
	else if (a < 30)
	{
		printf("a 的值小于30\n");
	}
	else
	{
		printf("没有匹配的值\n");
	}

	return 0;
}

4. 嵌套if语句

在 C 语言中,嵌套 if-else 语句是合法的,这意味着您可以在一个 ifelse if 语句内使用另一个 ifelse if 语句

复制代码
if(判断条件1)
{
   /* 当布尔表达式 1 为真时执行 */
   if(判断条件2)
   {
      /* 当布尔表达式 2 为真时执行 */
   }
}

#include <stdio.h>
 
int main ()
{
   /* 局部变量定义 */
   int a = 100;
   int b = 200;
 
   /* 检查布尔条件 */
   if( a == 100 )
   {
       /* 如果条件为真,则检查下面的条件 */
       if( b == 200 )
       {
          /* 如果条件为真,则输出下面的语句 */
          printf("a 的值是 100,且 b 的值是 200\n" );
       }
   }
   printf("a 的准确值是 %d\n", a );
   printf("b 的准确值是 %d\n", b );
 
   return 0;
}

Visual Studio编辑器左侧菜单栏不小心关掉如何打开(左侧解决方案资源管理器不显示如何打开)、C语言中int main和void main的区别以及C工程的创建_visual studio2022 资源管理器怎么打开桌面面板-CSDN博客
Visual Studio编辑器中C4996 'scanf': This function or variable may be unsafe.问题解决方案-CSDN博客

相关推荐
lly2024063 小时前
Bootstrap 警告框
开发语言
2601_949146534 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧4 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
在路上看风景4 小时前
19. 成员初始化列表和初始化对象
c++
KYGALYX4 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01034 小时前
C++课后习题训练记录Day98
开发语言·c++
念风零壹5 小时前
C++ 内存避坑指南:如何用移动语义和智能指针解决“深拷贝”与“内存泄漏”
c++
猫头虎5 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
YUJIANYUE5 小时前
PHP纹路验证码
开发语言·php
仟濹5 小时前
【Java基础】多态 | 打卡day2
java·开发语言