前言

循环是一种重要的控制结构,可以使程序重复执行一段代码,直到满足特定条件为止。

在C语言中,while和do-while是两种常用的循环结构,本文将详细介绍这两种循环的用法。

一、人物简介

  • 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。

  • 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。

二、基本语法

让我们先揭开While循环的神秘面纱,它的基本语法如下:

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

这个条件就像是一道门卫,只有条件为真时,我们才能进入循环体。当条件为假时,门卫会善意地告诉我们:“你们可以离开了,我不会阻挡你们继续前进。”

三、while和do-while

while循环:它是最常见的循环方式,先判断条件是否满足,如果满足就进入循环体。

我们可以像玩过山车一样刺激地循环,直到条件不满足才停下来。

int count = 0;
while (count < 5)
{
printf("如果感到快乐你就拍拍手!\n");
count++;
}

do-while循环:它比较乐观,先执行一次循环体,然后再判断条件。

只要条件满足,我们就可以快乐地重复执行循环体,直到条件不满足为止。

int number;
do
{
printf("请输入一个正整数:");
scanf("%d", &number);
} while (number <= 0);

四、while和do while循环的应用

场景一:冒险者的征程

#include <stdio.h>
int main()
{
int health = 100;
while (health > 0)
{
printf("勇敢的冒险者,你的生命值还剩下 %d\n", health);
health -= 10;
printf("你被怪物攻击了!生命值减少 10\n");
}
printf("很遗憾,你的冒险结束了!\n");
return 0;
}
  • 运行结果

场景二:猜大小

#include <stdio.h>
#include <stdlib.h>
#include <time.h> int main() {
int targetNumber, guess;
srand(time(NULL)); // 设置随机数种子 // 生成1到100之间的随机数
targetNumber = rand() % 100 + 1; printf("猜数字游戏开始!\n"); do {
printf("请输入一个1到100之间的整数:");
scanf("%d", &guess); if (guess == targetNumber) {
printf("恭喜你猜对了!\n");
} else if (guess < targetNumber) {
printf("猜小了,请继续尝试!\n");
} else {
printf("猜大了,请继续尝试!\n");
}
} while (guess != targetNumber); printf("游戏结束!\n"); return 0;
}
  • 运行结果

小结

通过这篇文章,我们学会了

1、while 循环的用法

2、do- while 循环的用法

欢迎各位 点赞 收藏 评论,如有错误请留言指正,非常感谢!

逍遥自在学C语言 | 揭开while循环的神秘面纱的更多相关文章

  1. 逍遥自在学C语言 | 第一个C语言程序 九层之台起于垒土

    一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.C语言简介 C语言是一种高级语言,运行效率仅次于汇编,支持跨平 ...

  2. 揭开.NET消息循环的神秘面纱(GetMessage()无法取得任何消息,就会进入Idle(空闲)状态,进入睡眠状态(而不是Busy Waiting)。当消息队列不再为空的时候,程序会自动醒过来)

    揭开.NET消息循环的神秘面纱(-) http://hi.baidu.com/sakiwer/item/f17dc33274a04df2a9842866 曾经在Win32平台下奋战的程序员们想必记得, ...

  3. 【转】再讲IQueryable<T>,揭开表达式树的神秘面纱

    [转]再讲IQueryable<T>,揭开表达式树的神秘面纱 接上篇<先说IEnumerable,我们每天用的foreach你真的懂它吗?> 最近园子里定制自己的orm那是一个 ...

  4. 揭开webRTC媒体服务器的神秘面纱——WebRTC媒体服务器&开源项目介绍

    揭开webRTC媒体服务器的神秘面纱--WebRTC媒体服务器&开源项目介绍 WebRTC生态系统是非常庞大的.当我第一次尝试理解WebRTC时,网络资源之多让人难以置信.本文针对webRTC ...

  5. 揭开A*算法的神秘面纱

    揭开A*算法的神秘面纱 一.总结 一句话总结:f(n)=g(n)+h(n) 这个算法有点像BFS的优化算法. g(n)为起点到当前方格的距离,这个是已知的. h(n)为当前方格到终点的距离,这个简单点 ...

  6. 逍遥自在学C语言 | 算数运算符

    前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.算数运算符简介 C语言的算数运算符,是用来完成基本的算术 ...

  7. 逍遥自在学C语言 | 变量、常量与数据类型

    前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.基本数据类型 1.整型 C语言中的整型数据如下表所示: ...

  8. 逍遥自在学C语言 | 关系运算符

    前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表示方式 关系运算符的作用是判断符号两边大小的关系 ...

  9. 逍遥自在学C语言 | 逻辑运算符

    前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表示方式 逻辑运算符是用来比较和操作布尔值的运算符 ...

  10. 逍遥自在学C语言 | 位运算符的基础用法

    前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表达方式 位运算符是一组用于在二进制数之间进行操作 ...

随机推荐

  1. Go语言:利用 TDD 驱动开发测试 学习结构体、方法和接口

    环境安装: (新手向)在Linux中使用VScode编写 "Hello,world"程序,并编写测试-Ubuntu20.4 上一篇相关随笔: Go语言:利用 TDD 测试驱动开发帮 ...

  2. ZIP64压缩扩展的兼容性问题

    一.ZIP压缩的两种规范 zip64 格式是标准 zip 格式的扩展,实际上消除了 zip 存档中文件大小和数量的限制. 每种格式允许的最大值总结如下: Standard Format Zip64 F ...

  3. ThreadLocal 类

    更多内容,访问 IT-BLOG ThreadLocal 并不是一个Thread,而是 ThreadLocalVariable(线程局部变量).也许把它命名为 ThreadLocalVar更加合适.线程 ...

  4. 全面了解 Redis 高级特性,实现高性能、高可靠的数据存储和处理

    目录 高性能.高可用.高可扩展性的原理 持久化 RDB持久化 AOF持久化 持久化的配置 RDB配置 AOF配置 持久化的恢复 RDB的恢复 AOF的恢复 RDB和AOF的选择 持久化对性能的影响 数 ...

  5. 搞一个自己用的node-cli

    我们都用过 vue 的cli ,或者 react的cli,  亦或是其他的cli 如 vite 等.他们都是提供了一个全局命令,然后在终端执行这个全局命令就可以创建出模板项目.今天我们就自己做一个,给 ...

  6. [nefu]C++程序设计与分析实验 - 锐格

    [nefu]C++程序设计与分析实验 - 锐格 第二章 C++基础 5330 #include<iostream> #include<iomanip> using namesp ...

  7. Cesium案例(六) Time Dynamic Wheels

      Cesium.Ion.defaultAccessToken =         "token";       const viewer = new Cesium.Viewer( ...

  8. 600 条最强 Linux 命令总结

    600 条最强 Linux 命令总结 每博一文案 你有千万条微博想写,可有些根本不重要,后来你才懂那是你怕别人看穿你所以才把真话埋在日常里.你有千万句话想说,可点开那 个对话框,你根本打不出一个字.你 ...

  9. 用Aspose-Java免费实现 PDF、Word、Excel、Word互相转换并将转换过得文件上传OSS,返回转换后的文件路径

    嘿嘿嘿.嘿嘿,俺又回来了! github代码地址 https://github.com/Tom-shushu/work-study 接口文档有道云 https://note.youdao.com/s/ ...

  10. 2023-05-08:我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符, 并返回唯一字符的个数。 例如:s = “LEETCODE“ ,则其中 “L“, “T

    2023-05-08:我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符, 并返回唯一字符的个数. 例如:s = "LEETCODE" ,则 ...