逻辑控制详解 C语言

📅 2026/7/16 5:15:39 👁️ 阅读次数 📝 编程学习
逻辑控制详解 C语言

if语法

例题:输入一个整数,判断是否为奇数

注意这里scanf内格式和你执行时输入的格式要一样,比如手动输入\n

语法形式1

if(表达式)
{
语句;
}

如果表达式为真,则执行语句。

如果if后不写花括号,则只执行if(表达式)后的一条指令

语法形式2:

if(表达式)
{
语句1;
}
else
{
语句2;
}

如果表达式为真则执行语句1,否则执行语句2。

例题:输入一个年龄,>= 18岁就输出“成年”,否则就输出“未成年”

语法形式3:

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

如果表达式1为真则执行语句1,如果表达式2为真则执行语句2,否则执行语句3。

逻辑运算符

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

注:C语言中,非0表示真,0表示假。

1. 逻辑取反运算符 !

逻辑取反:如果是真,经过逻辑取反结果就是假。如果是假,经过逻辑取反结果就是真。

a!a
非00
01

2.逻辑与运算符&&

只有两个表达式都为真的时候,整个表达式为真;只要有一个表达式为假,整个表达式为假。

例题:输入一个月份,如果是在3月到5月之间则输出春季

&&短路的时候,如果左边操作数为假,则右边不再计算

3. 逻辑或运算符 ||

|| 两边的表达式只要有一个是真,整个表达式就是真,两边的表达式都为假的时候,才为假。

||短路的时候,如果左边操作数为真,则右边不再计算

switch语句

多分支选择

switch语句是一种特殊形式的 if...else 结构,用于判断条件有多个确定结果的情况。它把多重的else if改成更易用、可读性更好的形式。

switch语法格式:

switch (整型表达式)
{
case 整型常量1: 语句;
case 整型常量2: 语句;
...
default: 语句;
}

swich()是一个入口,break是一个出口,没有break则进入对应case后会接着执行下一个case

输出hellothird

注意:
  • switch后的expression必须是整型表达式。
  • case 后的值,必须是整型常量表达式。

while语法格式:

while (循环条件)
{
// 循环条件为真则执行代码
}

练习:在屏幕上打印 1~10 的值

练习:输入一个正的整数,逆序打印这个整数的每一位

(改进一下)

(改进一下)

练习:求5的阶乘

break 和 continue

循环控制语句

break 和 continue 是两个用于在循环内部精确控制循环流程的关键字。

  • break:立即终止并跳出当前所在的循环。
  • continue:跳过本次循环中尚未执行的语句,直接开始下一次循环的判断和执行
练习:找到1-100之间第一个能被3整除的数字。要求使用break

练习:找到1-100之间所有能被3整除的数字。要求使用continue