C语言控制语句详讲

C语言是一种高级编程语言,它提供了许多控制语句,用于控制程序的执行流程。控制语句是程序中最基本的语句之一,它们可以让程序根据不同的条件执行不同的操作。本文将详细介绍C语言中的控制语句,并提供代码示例。

一、条件语句

条件语句用于根据不同的条件执行不同的操作。C语言中的条件语句有if语句、if-else语句和switch语句。

  1. if语句

if语句用于判断一个条件是否成立,如果成立则执行一段代码块。if语句的语法如下:

if (condition) {
    // code block
}

其中,condition是一个表达式,如果它的值为真,则执行code block中的代码。

下面是一个if语句的示例:

#include <stdio.h>

int main() {
    int num = 10;

    if (num > 0) {
        printf("num is positive\n");
    }

    return 0;
}

输出结果为:

num is positive
  1. if-else语句

if-else语句用于判断一个条件是否成立,如果成立则执行一段代码块,否则执行另一段代码块。if-else语句的语法如下:

if (condition) {
    // code block 1
} else {
    // code block 2
}

其中,condition是一个表达式,如果它的值为真,则执行code block 1中的代码,否则执行code block 2中的代码。

下面是一个if-else语句的示例:

#include <stdio.h>

int main() {
    int num = -10;

    if (num > 0) {
        printf("num is positive\n");
    } else {
        printf("num is negative\n");
    }

    return 0;
}

输出结果为:

num is negative
  1. switch语句

switch语句用于根据不同的条件执行不同的操作。switch语句的语法如下:

switch (expression) {
    case value1:
        // code block 1
        break;
    case value2:
        // code block 2
        break;
    ...
    default:
        // code block n
        break;
}

其中,expression是一个表达式,它的值会与每个case后面的值进行比较,如果相等,则执行对应的code block中的代码。如果没有任何一个case的值与expression的值相等,则执行default中的代码。

下面是一个switch语句的示例:

#include <stdio.h>

int main() {
    int num = 2;

    switch (num) {
        case 1:
            printf("num is 1\n");
            break;
        case 2:
            printf("num is 2\n");
            break;
        case 3:
            printf("num is 3\n");
            break;
        default:
            printf("num is not 1, 2 or 3\n");
            break;
    }

    return 0;
}

输出结果为:

num is 2
二、循环语句

循环语句用于重复执行一段代码块,直到满足某个条件为止。C语言中的循环语句有while循环、do-while循环和for循环。

  1. while循环

while循环用于重复执行一段代码块,直到满足某个条件为止。while循环的语法如下:

while (condition) {
    // code block
}

其中,condition是一个表达式,如果它的值为真,则重复执行code block中的代码。

下面是一个while循环的示例:

#include <stdio.h>

int main() {
    int num = 1;

    while (num <= 10) {
        printf("%d ", num);
        num++;
    }

    return 0;
}

输出结果为:

1 2 3 4 5 6 7 8 9 10
  1. do-while循环

do-while循环用于重复执行一段代码块,直到满足某个条件为止。与while循环不同的是,do-while循环会先执行一次代码块,然后再判断条件是否成立。do-while循环的语法如下:

do {
    // code block
} while (condition);

其中,condition是一个表达式,如果它的值为真,则重复执行code block中的代码。

下面是一个do-while循环的示例:

#include <stdio.h>

int main() {
    int num = 1;

    do {
        printf("%d ", num);
        num++;
    } while (num <= 10);

    return 0;
}

输出结果为:

1 2 3 4 5 6 7 8 9 10
  1. goto循环

goto语句是一种跳转语句,它可以使程序跳转到指定的标签处执行代码。虽然goto语句在编程中被广泛使用,但它也被认为是一种不良的编程实践,因为它可能会导致代码的可读性和可维护性降低。

基本语法

goto语句的基本语法如下:

goto label;
...
label: statement;

其中,label是一个标识符,它可以是任何合法的C语言标识符。statement是一个C语句,它将在标签处执行。

使用示例

下面是一个使用goto语句的示例程序,它将从1循环到10,但只在i等于5时输出一条消息:

#include <stdio.h>

int main() {
    int i = 1;
    
loop:
    if (i > 10) goto end;
    if (i == 5) printf("i is 5\n");
    i++;
    goto loop;
    
end:
    return 0;
}

在上面的示例中,我们使用了两个标签:loop和end。在循环中,我们使用了goto语句来跳转到标签loop处,以便重复执行循环。当i等于5时,我们使用printf语句输出一条消息。当i大于10时,我们使用goto语句跳转到标签end处,以便退出程序。

注意事项

虽然goto语句可以使程序更加简洁和高效,但它也可能会导致代码的可读性和可维护性降低。因此,在使用goto语句时,我们应该遵循以下几个注意事项:

  1. 尽量避免使用goto语句。在大多数情况下,我们可以使用其他控制语句(如if语句、while语句、for语句等)来实现相同的功能。

  2. 不要跨过变量的初始化语句。如果我们在goto语句之前声明了一个变量,并在goto语句之后使用它,那么这个变量可能会未被初始化而导致程序出错。

  3. 不要跨过函数返回语句。如果我们在函数中使用goto语句跳过了函数返回语句,那么程序将无法正常退出,可能会导致内存泄漏或其他问题。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

末、

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

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

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

打赏作者

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

抵扣说明:

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

余额充值