C语言分支循环语句

欢迎来到我的博客!今天我们将一起探讨C语言中非常重要的分支循环语句。这些语句在我们日常的编程工作中起着至关重要的作用,它们可以帮助我们更好地组织代码并实现复杂的逻辑。

一、If语句和关系操作符

首先,我们来看看If语句和关系操作符。在C语言中,我们使用if语句来根据特定条件执行代码块。关系操作符(<, >, <=, >=)用于比较两个值的大小。

int a = 10;
int b = 20;
if (a < b) {
    printf("a < b \n");
} else {
    printf("a > b \n");
}

这段代码会检查a是否小于b,如果是,就打印出"a < b ",否则打印出"a > b "。

二、条件操作符和逻辑操作符

接下来,我们要介绍的是条件操作符(?:)和逻辑操作符(&&, ||)。条件操作符是一个简便的三元操作符,它可以根据一个条件来决定两个值中的哪一个被赋值给一个变量。逻辑操作符用于组合布尔表达式。

int c = (a > b) ? a : b;   // 如果a大于b,c等于a,否则c等于b
if (a && b) {   // 如果a和b都为真,就执行下面的代码块
    printf("a,b都为true.\n");
} else {
    printf("a,b中至少有一个false.\n");
}

三、Switch语句

接下来,我们来看看Switch语句。Switch语句允许我们根据一个变量的值来执行不同的代码块。每个可能的值都被称为一个case,而默认的case(如果没有匹配的值)被称为default。

int day = 2;
switch (day) {
    case 1:
        printf("Monday\n");
        break;
    case 2:
        printf("Tuesday\n");
        break;
    case 3:
        printf("Wednesday\n");
        break;
    // ... other days ...
    default:
        printf("Invalid day.\n");   // 如果day的值没有匹配任何case,就执行default的代码块
}

四、while循环

while循环是一种先判断条件,再执行循环体的循环结构。当条件为真时,循环体会反复执行;当条件为假时,循环体将不再执行。

例如,以下是一个使用while循环计算1到10之和的示例代码:

int sum = 0;
int i = 1;
while (i <= 10) {
    sum += i;
    i++;
}
printf("1-100数字总和: %d", sum);

在上面的代码中,当i小于等于10时,循环体会反复执行,累加i的值并将i递增。当i大于10时,循环体将不再执行,程序输出计算结果。

五、for循环

for循环是一种先执行一次循环初始化,再根据指定的条件执行循环体,最后进行循环更新的循环结构。

例如,以下是一个使用for循环打印数字1到10的示例代码:

for (int i = 1; i <= 10; i++) {
    printf("%d ", i);
}

在上面的代码中,首先将i初始化为1,然后当i小于等于10时,执行循环体打印i的值并将i递增。当i大于10时,循环体将不再执行。

六、do-while循环

do-while循环是一种先执行一次循环体,再判断条件的循环结构。与while循环不同的是,do-while循环至少会执行一次循环体。

例如,以下是一个使用do-while循环从键盘输入数字并判断是否为正数的示例代码:

int num;
printf("请输入一个数字r: ");
scanf("%d", &num);
do {
    if (num < 0) {
        printf("输入无效,请输入正数: ");
        scanf("%d", &num);
    } else {
        printf("您输入的: %d\n", num);
        break;
    }
} while (1);

在上面的代码中,首先从键盘输入一个数字并存入num变量中。然后使用do-while循环判断num是否为正数。如果不是正数,则提示用户重新输入并等待用户输入新的数字。如果是正数,则输出用户输入的数字并跳出循环。由于do-while循环至少会执行一次循环体,因此需要在循环体内使用break语句才能跳出循环。

七、Break和Continue语句

Break语句

在C语言中,Break语句用于跳出当前循环或switch语句。当程序执行到Break语句时,它将立即退出当前循环或switch语句,并继续执行下一条语句。

例如,以下是一个使用Break语句跳出循环的示例代码:

#include <stdio.h>

int main() {
    int i;
    for (i = 1; i <= 10; i++) {
        if (i == 5) {
            break;
        }
        printf("%d ", i);
    }
    printf("循环结束 i = %d\n", i);
    return 0;
}

在上面的代码中,当i等于5时,程序执行到Break语句,跳出循环并输出"Loop exited at i = 5"。由于在Break语句之前已经打印了1到4的数字,因此循环只执行了5次。

Continue语句

Continue语句用于跳过当前循环的剩余部分,直接开始下一次循环。当程序执行到Continue语句时,它将立即退出当前循环的剩余部分,并继续执行下一次循环。

例如,以下是一个使用Continue语句的示例代码:

#include <stdio.h>

int main() {
    int i;
    for (i = 1; i <= 10; i++) {
        if (i % 2 == 0) {
            continue;
        }
        printf("%d ", i);
    }
    printf("循环结束 i = %d\n", i);
    return 0;
}

在上面的代码中,当i为偶数时,程序执行到Continue语句,跳过当前循环的剩余部分并开始下一次循环。因此,只有1、3、5、7、9这些奇数被打印出来。

八、循环嵌套

循环嵌套是指在循环内部再有一个或多个循环的情况。在C语言中,我们可以使用嵌套的for循环或while循环来实现循环嵌套。以下是一个使用嵌套for循环的示例代码:

#include <stdio.h>

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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小志biubiu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值