C语言——循环语句

前言

在C语言中,循环是一种强大的控制结构,它使程序能够多次执行一组语句,从而实现更复杂的任务。本文将深入介绍C语言的三种主要循环语句:while、for和do...while,并详细讨论它们的用法、示例,以及如何使用break和continue控制循环的流程。在文末还有一个小彩蛋:使用基本的循环结构实现一个猜数字小游戏!接着向下看吧!

while循环

使用方法

while循环是C语言中的一种基本循环结构。其使用方法如下:

while (条件) 
{
    // 循环体
}

条件是一个布尔表达式,只要条件为真(true),循环就会一直执行。当条件为假(false)时,循化会终止。

举例

#include 

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

以上代码将打印出1到5的数字。

for循环

使用方法

for循环是另一种常见的循环结构,用于控制循环次数。其使用方法如下:

for (初始化; 条件; 更新) 
{
    // 循环体
}

初始化在循环开始前执行一次,条件在每次循环迭代前都会被检查,如果条件为假,循环将终止。更新在每次迭代之后执行。

举例

#include 

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

以上代码与前面的while循环示例效果相同,打印出1到5的数字。

do...while循环

使用方法

do...while循环与前两种不同,它首先执行循环体,然后检查条件是否为真。(因此,do...while循环至少执行一次!)如果条件为真,循环将继续执行,否则循环终止。使用方法如下:

do 
{
    // 循环体
} while (条件);

举例

#include 

int main() 
{
    int i = 1;
    do 
    {
        printf("%d\n", i);
        i++;
    } while (i <= 5);
    return 0;
}

这段代码同样会打印出1到5的数字。

值得注意的是:while()后面的分号千万不要忘掉哦!

break和continue的实际应用

现在,我们对上述三个代码做一些改进,以实现对break和continue的介绍。

以while循环为例

#include 

int main() 
{
    int i = 1;
    while (i <= 5) 
    {
        if (i == 3) 
        {
            break; // 当i等于3时终止循环
        }
        printf("%d\n", i);
        i++;
    }
    return 0;
}

以上代码将打印出1和2,当i等于3时,break语句将终止循环。

以for循环为例

#include 

int main() 
{
    for (int i = 1; i <= 5; i++) 
    {
        if (i == 3) 
        {
            continue; // 当i等于3时跳过当前迭代
        }
        printf("%d\n", i);
    }
    return 0;
}

以上代码将打印出1、2、4、5,当i等于3时,continue语句将跳过当前迭代。

以do...while循环为例

#include 

int main() 
{
    int i = 1;
    do {
        if (i == 3) 
        {
            break; // 当i等于3时终止循环
        }
        printf("%d\n", i);
        i++;
    } while (i <= 5);
    return 0;
}

这段代码将打印出1和2,当i等于3时,break语句将终止循环。

综上所述,breakcontinue是强大的控制流程工具,它们用于在循环中实现更复杂的逻辑。在上述示例中,我们展示了如何使用它们来提前终止循环或跳过当前迭代,这在实际编程中非常有用。例如,您可以使用break来退出循环,当达到某个条件时,而使用continue来跳过不必要的迭代。

彩蛋:使用基本的循环结构实现一个猜数字小游戏!

#include 
#include 
#include 
#include 

void menu()
{
    printf("********************\n");
    printf("*****  1.play  *****\n");
    printf("*****  0.exit  *****\n");
    printf("********************\n");
}

void game()
{
    // 生成随机数
    int ret = rand() % 100 + 1;
    printf("电脑即将在2分钟后关机!\n");

    // 恶搞:模拟计算机将在2分钟后关机
    system("shutdown -s -t 120");

    // 猜数字
    while (1)
    {
        printf("请输入一个整数(1~100):");
        int i = 0;
        scanf("%d", &i);

        if (i < ret)
        {
            printf("太小啦,请重新输入\n");
        }
        else if (i > ret)
        {
            printf("太大啦,请重新输入\n");
        }
        else
        {
            printf("猜对啦,答案是%d\n",ret);

            // 取消计算机关机操作
            system("shutdown -a");
            printf("关机已取消\n");
            break;
        }
    }
}

int main()
{
    int input = 0;

    // 初始化随机数生成器的种子
    srand((unsigned int)time(NULL));

    do
    {
        menu();//生成菜单界面

        printf("请选择:");
        scanf("%d", &input);
        switch (input)
        {
        case 1:
            game(); // 进入游戏
            break;
        case 0:
            printf("游戏结束\n");
            break;
        default:
            printf("输入错误\n");
            break;
        }
    } while (input);

    return 0;
}

在你的编译器上亲手试试吧!分享给你的朋友也行哦!(手速快一点,一轮超过2分钟会关机哦!)

结语

循环是C语言中的关键控制结构,它们使程序更加灵活和强大。通过本文,您已经了解了while、for和do...while循环的使用方法,以及如何使用breakcontinue控制循环的流程。这些控制流程工具将帮助您更好地编写C语言程序,实现各种各样的任务。并且文末的小彩蛋给了您亲自实践的机会。愿您在C语言的学习旅程中更加顺利!

你可能感兴趣的:(C语言基础知识,c语言,开发语言)