逍遥自在学C语言 | 揭开while循环的神秘面纱
前言
循环是一种重要的控制结构,可以使程序重复执行一段代码,直到满足特定条件为止。
在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循环的神秘面纱的更多相关文章
- 逍遥自在学C语言 | 第一个C语言程序 九层之台起于垒土
一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.C语言简介 C语言是一种高级语言,运行效率仅次于汇编,支持跨平 ...
- 揭开.NET消息循环的神秘面纱(GetMessage()无法取得任何消息,就会进入Idle(空闲)状态,进入睡眠状态(而不是Busy Waiting)。当消息队列不再为空的时候,程序会自动醒过来)
揭开.NET消息循环的神秘面纱(-) http://hi.baidu.com/sakiwer/item/f17dc33274a04df2a9842866 曾经在Win32平台下奋战的程序员们想必记得, ...
- 【转】再讲IQueryable<T>,揭开表达式树的神秘面纱
[转]再讲IQueryable<T>,揭开表达式树的神秘面纱 接上篇<先说IEnumerable,我们每天用的foreach你真的懂它吗?> 最近园子里定制自己的orm那是一个 ...
- 揭开webRTC媒体服务器的神秘面纱——WebRTC媒体服务器&开源项目介绍
揭开webRTC媒体服务器的神秘面纱--WebRTC媒体服务器&开源项目介绍 WebRTC生态系统是非常庞大的.当我第一次尝试理解WebRTC时,网络资源之多让人难以置信.本文针对webRTC ...
- 揭开A*算法的神秘面纱
揭开A*算法的神秘面纱 一.总结 一句话总结:f(n)=g(n)+h(n) 这个算法有点像BFS的优化算法. g(n)为起点到当前方格的距离,这个是已知的. h(n)为当前方格到终点的距离,这个简单点 ...
- 逍遥自在学C语言 | 算数运算符
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.算数运算符简介 C语言的算数运算符,是用来完成基本的算术 ...
- 逍遥自在学C语言 | 变量、常量与数据类型
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.基本数据类型 1.整型 C语言中的整型数据如下表所示: ...
- 逍遥自在学C语言 | 关系运算符
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表示方式 关系运算符的作用是判断符号两边大小的关系 ...
- 逍遥自在学C语言 | 逻辑运算符
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表示方式 逻辑运算符是用来比较和操作布尔值的运算符 ...
- 逍遥自在学C语言 | 位运算符的基础用法
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表达方式 位运算符是一组用于在二进制数之间进行操作 ...
随机推荐
- Go语言:利用 TDD 驱动开发测试 学习结构体、方法和接口
环境安装: (新手向)在Linux中使用VScode编写 "Hello,world"程序,并编写测试-Ubuntu20.4 上一篇相关随笔: Go语言:利用 TDD 测试驱动开发帮 ...
- 【LeetCode动态规划#05】背包问题的理论分析(基于代码随想录的个人理解,多图)
背包问题 问题描述 背包问题是一系列问题的统称,具体包括:01背包.完全背包.多重背包.分组背包等(仅需掌握前两种,后面的为竞赛级题目) 下面来研究01背包 实际上即使是最经典的01背包,也不会直接出 ...
- ACM-DP-数塔问题
Description 在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的: 有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少? 已经告 ...
- 京东LBS推荐算法实践
作者:京东零售 郑书剑 1.推荐LBS业务介绍 1.1 业务场景 现有的同城购业务围绕京东即时零售能力搭建了到店.到家两种业务场景.同城业务与现有业务进行互补,利用高频,时效性快的特点,可以有效提升主 ...
- pychearm日常用法
一 常用快捷键 编辑类:Ctrl + D 复制选定的区域或行Ctrl + Y 删除选定的行Ctrl + Alt + L 代码格式化Ctrl + Al ...
- 一天吃透MySQL面试八股文
什么是MySQL MySQL是一个关系型数据库,它采用表的形式来存储数据.你可以理解成是Excel表格,既然是表的形式存储数据,就有表结构(行和列).行代表每一行数据,列代表该行中的每个值.列上的值是 ...
- django restframework的简单使用
django restframework的简单使用 1.快速上手 配置: (pip install djangorestframework==3.12.4) # settings.py INSTALL ...
- Go语言实战: 即时通信系统(未完)
使用Go语言构建一个即时通信系统,旨在锻炼Go语言编程能力 该通信系统至少能够允许用户能够在客户端进行公聊,即所发消息能被所有用户看到,也可发起私聊(即两个用户之间私密通信).同时,用户能够看到当前有 ...
- SpringCloud Gateway 3.x 响应头添加 Skywalking TraceId
在微服务架构中,一次请求可能会被多个服务处理,而每个服务又会产生相应的日志,且每个服务也会有多个实例.在这种情况下,如果系统发生异常,没有 Trace ID,那么在进行日志分析和追踪时就会非常困难,因 ...
- 学习MASA第一天:MASA Blazor TEST项目创建
个人博客地址: https://note.raokun.top 拥抱ChatGPT,国内访问网站:https://www.playchat.top 学习MASA第一天:MASA Blazor TEST ...