C语言基础条件和循环
发布日期:2021-05-14 23:42:26 浏览次数:22 分类:精选文章

本文共 2179 字,大约阅读时间需要 7 分钟。

C语言基础——条件和循环

条件结构

if-else和switch语句

在C语言中,条件判断是程序执行流程的重要部分,常用的有if-else和switch语句。

if-else语句

if-else语句用于根据特定条件执行不同的代码块。语法结构如下:

if(条件语句) {
执行体1;
} else if(条件语句2) {
执行体2;
} else if(条件语句3) {
执行体3;
} else {
执行体4;
}
  • 条件语句可以是一个与true或false比较相关的表达式。
  • 每个条件语句后面跟一个执行体,执行体在满足该条件时执行。
  • else if语句用于多个条件的判断,如果前面的条件不满足,则检查下一个条件。
  • else语句用于当所有if条件都不满足时的执行体。

switch-case语句

switch语句用于根据精确值进行多分支判断,常用于处理枚举类型的值。语法结构如下:

switch(表达式) {
case 常数值1:
执行体1;
break;
case 常数值2:
执行体2;
break;
case 常数值3:
执行体3;
break;
default:
执行体4;
break;
}
  • 表达式必须是整型。
  • 每个case语句后面必须带break,否则会执行后面的case语句。
  • default语句用于处理未列出的所有情况。
  • 多个case可以共享同一个执行体。

条件语句的区别

特性 if语句 switch语句
判断范围 区间(范围值) 精确值
逻辑复杂度 支持复合逻辑 适用于单个选项
语句类型 适用于多种条件判断 适用于枚举类型值的精确判断

循环结构

循环结构用于重复执行特定的代码块,常用的有while、do-while和for语句。

while语句

while语句用于在满足特定条件时执行循环体。语法结构如下:

while(条件表达式) {
循环体;
}
  • 条件表达式在每次循环开始时检查,若为真则执行循环体。
  • 如果条件为false,则不会执行循环体。

while的执行顺序

while(n-- > 0) {
sum *= n;
}
  • while(n-- > 0):先执行n--, 再检查条件。
  • while(--n > 0):先检查条件,再执行n--。

do-while语句

do-while语句与while语句不同之处在于,do语句先执行循环体,再检查条件。语法结构如下:

do {
循环体;
} while(条件表达式);
  • do-while语句总是先执行循环体一次。
  • 如果条件为false,循环体只执行一次。

for语句

for语句提供了初始化、条件和递增的控制方式。语法结构如下:

for(表达式1; 表达式2; 表达式3) {
循环体;
}
  • 表达式1初始化变量。
  • 表达式2作为终止条件。
  • 表达式3执行循环结束前执行。
  • for循环的执行顺序为:表达式1 -> 表达式2 -> 循环体 -> 表达式3 -> 表达式2 -> 循环体...

break和continue语句

  • break:立即退出当前循环体,继续执行后续代码。
  • continue:跳过当前循环体,继续执行下一个循环。

实用示例

计算阶乘

int main() {
int n, sum = 1;
scanf("%d", &n);
n++;
while (--n > 0) {
sum *= n;
}
printf("%d\n", sum);
}

计算字符个数

int main() {
int n = 0;
while ( getchar() != '\n' ) {
n++;
}
printf("%d\n", n);
}

计算最大公约数

int main() {
int num1, num2, m, n, mid;
scanf("%d%d", &num1, &num2);
m = num1;
n = num2;
for (mid = n; mid > 0; mid = n % mid) {
mid = n % mid;
n = mid;
}
printf("%d和%d的最大公约数为:%d", num1, num2, mid);
}

金字塔形图案

int main() {
int tall;
printf("输入金字塔层数:");
scanf("%d", &tall);
for (x = 0; x <= tall; x++) {
for (y = 0; y < x; y++) {
printf("*");
}
printf("\n");
}
}

通过这些示例,可以更好地理解C语言中的条件和循环结构,以及它们在实际编程中的应用。

上一篇:C字符串高级
下一篇:2021-03-23 循环运用

发表评论

最新留言

很好
[***.229.124.182]2025年04月15日 09时54分36秒