分支与循环中的基本知识点

本文详细介绍了C语言中的三大结构体、三大操作符(关系、条件和逻辑),以及分支语句(if...else,switch)、while、for和do-while循环的语法、解释和使用示例。
摘要由CSDN通过智能技术生成

一、C语言中的三大结构体

C语⾔是结构化的程序设计语⾔,这⾥的结构指的是顺序结构选择结构循环结构。

二、C语言中的三大操作符

(1)关系操作符

  • <  ⼩于运算符
  • >  ⼤于运算符
  • <= ⼩于等于运算符
  • >= ⼤于等于运算符
  • == 相等运算符
  • != 不相等运算符

ps:在python中可以写成 a < b < c ,但在C语言中要写成 a < b && b < c

 (2)条件操作符(也称为三目操作符)

1.语法格式如下:

1 exp1 ? exp2 : exp3

2.解释说明: 

 条件操作符的计算逻辑是:如果 exp1 为真, exp2 计算,计算的结果是整个表达式的结果;如果 exp1 为假, exp3 计算,计算的结果是整个表达式的结果。

ps:注意要给它一个返回结果:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
	int m = 0;
	int n = 0;
	scanf("%d%d", &m, &n);
	int a = m > n ? 6 : 5;
	printf("%d", a);
	return 0;
}

(3)逻辑操作符:&& , || , !

  • && :与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。
  • || :或运算符,就是或者的意思(两侧⾄少有⼀个表达式为真,则为真,否则为假)。
  • ! :逻辑取反运算符(改变单个表达式的真假)。

       

1.&& 是⼀个双⽬操作符,使⽤的⽅式是 a&&b , && 两边的表达 式都是真的时候,整个表达式才为真,只要有⼀个是假,则整个表达式为假。图示如下:

 

       

 2 .|| 也是⼀个双⽬操作符,使⽤的⽅式是 a || b , || 两边的表达式只要有⼀个是真,整个表达式就是真,两边的表达式都为假的时候,才为假。图示如下:

 

     

 3 .!就是取反运算符 !图示如下:

三、分支语句 

  •  if...else if...else语句
  • switch语句

 (1)if...else if...else语句

1.语法格式: 

 

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

2.解释说明:

表达式1成⽴(为真),则语句1执⾏,表达式2成⽴(为假),则语句2执⾏,若以上两者都不满足则语句3执行

ps:在if语句后面没有冒号,也没有分号,与python不一样;同时若以上语句不止一行,要将内容用大括号( {} ) ;还有else悬空问题,else不是与对其的if匹配,而是与最近的if匹配。

 (2)switch语句

1.语法格式: 

switch (expression) {
 case value1: statement
 case value2: statement
 default: statement
}

 2.解释说明:

根据表达式 expression 不同的值,执⾏相应的 case 分⽀。如果找不到对应的值, 就执⾏ default 分⽀。 

 ps:switch 后的 expression 必须是整型表达式 ;case 后的值,必须是整形常量表达式 ;case 和后边的数字之间必须有空格 ; 每⼀个 case 语句中的代码执⾏完成后,需要加上 break ,才能跳出这个switch语句 ,否则会执行下一个case;数字后面必须有冒号(:)。

四、循环语句 

  • while循环
  • for循环
  • do-while 循环 

(1)while循环 

1.语法格式:

 

while(表达式)
 语句;

 

int main()
{
    int i = 0;//(初始化)
    while (i <= 3)//(判断)
    {
        printf("%d\n", i);
        i++;//调整
    }
}

 2.执行流程:

 

3.解释说明: 

⾸先上来就是执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语 句,语句执⾏完后再继续判断,是否进⾏下⼀次循环。 

ps:必须要初始化 ; 在语句中必须要做出调整 ,否则容易死循环 。

(2) for循环

 

1.语法格式:

for(表达式1; 表达式2; 表达式3)
{
语句
}

表达式1 ⽤于循环变量的初始化  ; 表达式2 ⽤于循环结束条件的判断表达式3 ⽤于循环变量的调整 

int main()
{
	for (int i = 0; i <= 3; i++)
	{
		printf("%d", i);
	}
	return 0;
}

2.执行流程:

3.解释说明: 

 ⾸先执⾏ 表达式1 初始化循环变量,接下来就是执⾏ 表达式2 的判断部分, 表达式2 的结果如果 ==0,则循环结束; 表达式2 的结果如果!=0则执⾏循环语句,循环语句执⾏完后,再去执⾏表 达式 3 ,调整循环变量,然后再去 表达式2 的地⽅执⾏判断, 表达式2 的结果是否为0,决定循环是否继 续。

整个循环的过程中,表达式1初始化部分只被执⾏1次,剩下的就是表达式2、循环语句、表达式3在循 环。

ps:括号内的十分号,而不是冒号 

(3) do-while 循环

1.语法格式 

do
 语句;
while(表达式);

 

int main()
{
    int i = 0;//初始化
    do {
        printf("%d\n", i);
        i++;//调整
    } while (i <= 3);//判断
}

2.执行流程

 

3.解释说明: 

在 do while 循环中先执⾏图上的“语句”,执⾏完语句,再去执⾏“判断表达式”,判断表达式的 结果是!=0,则继续循环,执⾏循环语句;判断表达式的结果==0,则循环结束。 

ps:在 do while 语句中循环体是⾄少执⾏⼀次的。

(4)三大循环语句的总结

  • while循环:先初始化,再判断,最后调整
  • for循环: 先初始化,再判断,最后调整,适用于90%的循环环境
  • do-while 循环:先初始化,再调整,最后判断
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值