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博客

相关推荐
山峰哥16 分钟前
Python爬虫实战:从零构建高效数据采集系统
开发语言·数据库·爬虫·python·性能优化·架构
历程里程碑1 小时前
LeetCode热题11:盛水容器双指针妙解
c语言·数据结构·c++·经验分享·算法·leetcode·职场和发展
郝学胜-神的一滴1 小时前
使用OpenGL绘制卡通效果的圣诞树
开发语言·c++·程序人生·游戏·图形渲染
想回家的一天6 小时前
ECONNREFUSED ::1:8000 前端代理问题
开发语言
cike_y6 小时前
Mybatis之解析配置优化
java·开发语言·tomcat·mybatis·安全开发
Jay_Franklin8 小时前
SRIM通过python计算dap
开发语言·python
Slow菜鸟8 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
消失的旧时光-19438 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
wadesir8 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
tap.AI8 小时前
RAG系列(二)数据准备与向量索引
开发语言·人工智能