[C语言]if语句详解

这篇具有很好参考价值的文章主要介绍了[C语言]if语句详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

C语言初阶系列

分支语句和循环语句(1)


目录

C语言初阶系列

前言

一,什么是语句?

1.1如何理解语句?

二,分支语句(选择结构)

2.1,if语句

2.2,if语句的错误的条件写法

2.2,if语句的正确的条件写法

2.3,单分支结构

2.4,双分支结构

2.5,多分支结构        

2.5.1可以实现,使用的很多的嵌套但是很臃肿的写法

2.5.2简洁的写法

2.5.2更简洁的写法

2.6,if语句默认它的后面只能控制一条语句

 2.7,养成良好的代码习惯

2.7.1更人看懂的代码风格 

if语句小技巧

2.8,举例if语句

2.8.1. 判断一个数是否为奇数

2.8.2.输出1 - 100之间的奇数

总结


前言

我们学习C语言,从小白成长为大佬的的探险历程,我们在这章将初步探索if语句这个知识关卡


一,什么是语句?

C语言语句可分为以下五类:
1. 表达式语句
2. 函数调用语句
3. 控制语句
4. 复合语句
5. 空语句

1.1如何理解语句?

我们将使用代码和注释,以及和运行示意图:

int main()
{
	3 + 5;//这就是一个表达式语句
	printf("hehe\n");//我们想用printf函数打印hehe这个信息,调用这个函数,
	//完成之后给个分号,这就是函数调用语句
	//语句就是大部分情况下一个分号隔开的就是一个语句
	;//简单的放一个分号,这就是一个语句,但是这个语句什么都不干,这叫空语句
	//空语句的应用场景,有时候我们需要一条语句,但是这条语句什么都不需要做,就可以使用空语句
	return 0;
}

控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语
言有九种控制语句。
可分成以下三类:
1. 条件判断语句也叫分支语句:if语句、switch语句;
2. 循环执行语句:do while语句、while语句、for语句;
3. 转向语句:break语句、goto语句、continue语句、return语句

二,分支语句(选择结构)

分支语句是面向我们C语言的选择结构,为了实现这种选择结构
C语言给出了分支语言这个语法特点

2.1,if语句

是C语言单子常用的,能够实现分支的这样的语句形式
if语句该怎么去书写呢,

解释一下:
如果表达式的结果为真,则语句执行。
在C语言中如何表示真假?
0表示假,非0表示真。

2.2,if语句的错误的条件写法

我们将使用代码和注释,以及和运行示意图:

//错误写法
int main()
{
	int age = 0;
	scanf("%d", &age);
	if (18<= age <=30)
	//表达式先判断age>=18,
	//如果age是50的话,18小于age,这个条件为真,为真就等于1
	//1又小于等于30,所以这个地方就打印青年了
	//不是两端去判断age在这个范围内,它是先执行18<= age,在执行age <=30
	printf("青年\n");
	return 0;
}

2.2,if语句的正确的条件写法

我们将使用代码和注释,以及和运行示意图:

正确写法
int main()
{
	int age = 0;
	scanf("%d", &age);
	if ( age >=18 && age <= 30)
	printf("青年\n");
	return 0;
}

2.3,单分支结构

单分支语法结构:
if (表达式)  
语句;

解释:
if语句的后面的小小括号里面放一个表达式,
表达式的结果如果为真,语句就被执行,表达式的结果如果为假就不被执行
C语言中:0表示假,非0表示为真
表达式如果算出的不是0就是真,语句执行,如果为0就不执行

我们将使用代码和注释,以及和运行示意图:

//单分支的场景
//只处理符合条件的
int main()
{
	//如果年龄大于等于18 -- 成年
	//小于18,不管他
	int age = 0;
	scanf("%d", &age);
	if (age >= 18)
	{
		printf("成年人");
	}
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

2.4,双分支结构

双分支语法结构:
if (表达式)
语句1;
else
语句2;

解释:
if如果表达式为真,就执行语句1,
当表达式为假的时候,我也想处理,我就可以走else,就可以执行语句2
要么你从if语句进去,执行语句1,不行就执行else语句,执行语句2,这个里面二选一

我们将使用代码和注释,以及和运行示意图:

int main()
{
	// 有if有else你不行就我来
	//如果年龄大于等于18 -- 成年人,否则就打印 -- 未成年人
	int age = 0;
	scanf("%d", &age);
	if (age >= 18)
	{
		printf("成年人");
	}
	else
	{
		printf("未成年人\n");
	}
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

2.5,多分支结构

多分支语法结构:    
if (表达式1)
语句1;
else if (表达式2)
语句2;
else
语句3;

解释:
if表达式语句,如果表达式语句为真,就执行语句1,
如果不行的话,else if在判断一下下面表达式2,
如果表达式2的语句为真,就执行语句2,
如果表达式2的语句也不为真,就只能执行else的语句3
这里就做到了3选1,当然也可以多选1

多分支结构举例:
 我们使用多分支的条件
age <18  - 未成年
18-30  - 青年
31-50  -中年
51-70  -中老年
 71-99 -老年
 >99   -老寿星


2.5.1可以实现,使用的很多的嵌套但是很臃肿的写法

我们将使用代码和注释,以及和运行示意图:

int main()
{
	int age = 0;
	scanf("%d", &age);
	if (age < 18)
	{
		printf("未成年\n");
	}
	else//else如果是整体的一个逻辑的话,大于等于18,
		//else里面有很多种类的情况,里面也可以细分
	{
		if (age >= 18 && age <= 30)//如果大括号里面只有一条语句。就可以将大括号去掉
		{
			printf("青年\n");//if  else这个整体合起来是一条语句
		}
		else
		{
			if (age >= 31 && age <= 50)
			{
				printf("中年\n");
			}
			else
			{
				if (age >= 51 && age <= 70)
				{
					printf("中老年\n");
				}
				else
				{
					if (age >= 71 && age <=99 )
					{
						printf("老年\n");
					}
					else
					{
						printf("老寿星\n");
					}
				}
			}
		}
	}
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

 2.5.2简洁的写法

 我们将使用代码和注释,以及和运行示意图:

int main()
{
	int age = 0;
	scanf("%d", &age);
	if (age < 18)
		printf("未成年\n");
	else if (age >= 18 && age <= 30)
		printf("青年\n");
	else if (age >= 31 && age <= 50)
		printf("中年\n");
	else if (age >= 51 && age <= 70)
		printf("中老年\n");
	else if (age >= 71 && age <=99 )
		printf("老年\n");
	else
		printf("老寿星\n");		
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

  2.5.2更简洁的写法

 我们将使用代码和注释,以及和运行示意图:

//因为有前置条件可以在else if中写出一种条件就行 
//但是条件顺序不能变动,变动就会逻辑错误
int main()
{
	int age = 0;
	scanf("%d", &age);
	if (age < 18)
		printf("未成年\n");
	else if ( age <= 30)
		printf("青年\n");
	else if ( age <= 50)
		printf("中年\n");
	else if ( age <= 70)
		printf("中老年\n");
	else if ( age <= 99)
		printf("老年\n");
	else
		printf("老寿星\n");
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

2.6,if语句默认它的后面只能控制一条语句

 我们将使用代码和注释,以及和运行示意图:

int main()
{
	int age = 0;
	scanf("%d", &age);
	if (age >= 18)
	    printf("成年了\n");
	    printf("谈恋爱");//独立的,不被if控制
	return;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

如果想让if语句可以控制,就要加一个限制
if后面加上一个大括号,这样if语句才都被控制了

一个大括号对应的是一个代码块

int main()
{
	int age = 0;
	scanf("%d", &age);
	if (age >= 18)
	{//代码块
		printf("成年了\n");
		printf("谈恋爱");
	}
	return;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

 2.7,养成良好的代码习惯

要养成良好的代码风格,让别人能够看得懂
容易让大家出现阅读错误的代码风格 

我们将使用代码和注释,以及和运行示意图:

int main()
{
	int a = 0;
	int b = 2;
	if (a == 1)
		if (b == 2)
			printf("hehe\n");
	else
		printf("haha\n");
	return 0;
}
//看代码感觉结果是haha
//但是结果是不打印
//else是与最近的if相匹配的,这样第一if进入了才能执行if里面的if和else
//要写出让人容易理解的代码风格

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

//更容易看懂的代码风格
int main()
{
	int a = 0;
	int b = 2;
	if (a == 1)
	{
		if (b == 2)
			printf("hehe\n");
		else
			printf("haha\n");
	}
	return 0;
}

2.7.1更人看懂的代码风格 

我们将使用代码和注释,以及和运行示意图:

if语句的书写风格
 容易误导的写法
if的条件满足就是return x,不满足就返回return y。
if (condition) {
    return x;
}
return y;
让人一目了然的写法
if (condition)
{
    return x;
}
else
{
    return y;
}
在不影响效率的情况下我们要写那种让人一目了然的代码

if语句小技巧

我们将使用代码和注释,以及和运行示意图:

int main()
{
	int a = 0;
	//if(a == 5)//这样写少写一个=号,不易发现,没有报错
	if (5 == a)//当我们写少写一个=号,就会报错,易发现错误
		//未来我们想判断一个变量和一个常量值是否相等的话,
		//可以把常量放在等号的左边,这样即使少写了一个等号,就会发现错误,改正
		printf("hehe\n");
	return 0;
}

2.8,举例if语句

2.8.1. 判断一个数是否为奇数

我们将使用代码和注释,以及和运行示意图:

int main()
{
	int n = 0;
	scanf("%d", &n);//只有变量才能赋值,表达式是不能被赋值的,
	//少写一个等号就会直接报错的
	if (n % 2 == 1)//通过模2得到的余数为1的,都是奇数
	{
		printf("YES\n");
	}
	else
		printf("NO\n");
		return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

 2.8.2.输出1 - 100之间的奇数

我们将使用代码和注释,以及和运行示意图:

使用分支语句解题:

int main()
{
	int i = 1;//循环变量
	while (i <= 100)
	{
		if (i % 2 == 1)//通过模2得到的余数为1的,都是奇数
			printf("%d ", i);//%d后面加一个空格是为了,让我们看的跟清晰
		i++;
	}
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端

 不使用分支语句解题:

int main()
{
	int i = 1;//循环变量
	while (i <= 100)
	{
		printf("%d ", i);//%d后面加一个空格是为了,让我们看的跟清晰
		i+=2;
	}
	return 0;
}

[C语言]if语句详解,c语言,c语言,开发语言,汇编,后端


总结

以上就是今天要讲的内容,本文仅仅全面介绍了C语言的if语句,可以让你在c语言的探险更加有趣,充实。文章来源地址https://www.toymoban.com/news/detail-584864.html

到了这里,关于[C语言]if语句详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • if语句—超详解

    目录 语法结构:  ps:表达式详解: ps:单条语句与多条语句: ex:下面我们写几个例子来加深一下理解: if语句是分支语句(循环结构)的一种: 1. if (表达式)    语句;  当age满足 18 这个条件时,就可以继续执行下面的语句,打印出 \\\"未成年\\\"。   2. if (表达式)    语句1; else  

    2023年04月19日
    浏览(22)
  • MySQL的IF语句详解

    MySQL数据库中,IF语句是一种条件控制语句,用于根据某些条件的真假来执行不同的代码逻辑。IF语句可以帮助我们在SQL查询中实现更复杂的逻辑操作。 1、IF语句的基本用法 IF(condition, true_statement, false_statement); condition: 条件表达式,可以是任何返回布尔值的表达式。 true_state

    2024年02月03日
    浏览(36)
  • Javascript if 语句使用详解

    目录 Javascript if 语句使用详解 一、if语句 二、if……else语句 三、if……else if语句 if语句是使用最为普遍的条件选择语句,每一种编程语言的if语句都差不多。if语句类型共有3种: (1)if语句(单向选择); (2)if……else语句(双向选择); (3)if……else if语句(多向选择

    2024年04月29日
    浏览(45)
  • C语言——分支语句(if,switch)

    前言:这篇博客,主要想从 理解分支语句,语句的执行过程和书写 以及一些 注意事项 来谈谈 分支语句 🎬 个人简介:努力学习ing 📝 CSDN主页 愚润求学 🌄 每日鸡汤: 我走的很慢,但我从不后退 目录 一,if语句 注意事项 二,switch语句 我们如何理解分支语句是什么? 分

    2024年02月06日
    浏览(58)
  • (上) C语言中的语句分类及分支语句:if语句、switch语句介绍

    目录 前言 一、语句的分类 1. 空语句 2. 表达式语句 3. 函数调用语句 4. 复合语句 5. 控制语句 二、分支语句 1. if语句 (1) if的使用 (2) else的使用 (3) 分支中包含多条语句 (4) 嵌套if (5) 悬空else问题 2. switch语句 (1) if语句和switch语句的对比 (2) switch语句中的break (3) switch语句中的defa

    2024年01月22日
    浏览(70)
  • JS if else语句详解

    在正常情况下,JavaScript 脚本是按顺序从上到下执行的,这种结构被称为顺序结构。如果使用 if、else/if 或 switch 语句,可以改变这种流程顺序,让代码根据条件选择执行的方向,这种结构被称为分支结构。 if 语句允许根据特定的条件执行特定的语句。语法格式如下: if(expr

    2024年02月15日
    浏览(49)
  • 微机原理:汇编语言语句类型与格式

    汇编语言源程序包括的语句类型为:指令性语句和指示性语句。 指令性语句 即为通常所说的 符号指令 ; 符号指令 :经过汇编后,其机器指令通知CPU进行数模操作。 指示性语句 包括 伪指令 和 宏指令 。 伪指令 :是非机器指令,是在汇编链接期间进行操作。为汇编程序,

    2024年02月07日
    浏览(39)
  • Shell脚本之——条件语句if详解

    测试表达式是否成立,若成立返回0,否则返回其他数值。 -d∶ 测试是否为目录(Directory) -e∶ 测试目录或文件是否存在(Exist) -f∶ 测试是否为文件(File) -r∶ 测试当前用户是否有权限读取(Read) -w∶ 测试当前用户是否有权限写入(Write) -x∶测试当前用户是否有权限执

    2024年01月21日
    浏览(65)
  • C 语言教程:条件和 if...else 语句

    您已经学习过 C 语言支持数学中的常见逻辑条件: 小于: a b 小于或等于: a = b 大于: a b 大于或等于: a = b 等于: a == b 不等于: a != b 您可以使用这些条件来根据不同的决策执行不同的操作。 C 语言具有以下条件语句: 使用 if 来指定要执行的代码块,如果指定的条件为真

    2024年02月04日
    浏览(57)
  • Java中if判断语句的使用详解

    摘要:if判断语句是Java中最基本也是最常用的流程控制语句之一。本文将详细介绍Java中if语句的用法和常见的应用场景,帮助读者深入理解并正确使用if语句。 正文: 一、if语句的基本语法 其中,condition为一个布尔表达式,即返回true或false的表达式。如果condition为true,就执

    2024年01月19日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包