C语言(13)------------>do-while循环

1.do-while循环的语法

我们知道C语言有三大结构,顺序、选择、循环。我们可以使用while循环、for循环、do-while循环实现循环结构。之前的博客中提及到了前两者的技术实现。可以参考:

C语言(11)------------->while循环 CSDN

C语言(12)--------->for循环 CSDN

那do-while循环的语法是怎样的呢?

do

{

控制语句;

}while(判断表达式);

我们看一个例子

打印1-10的数字:

参考代码:

cpp 复制代码
#include <stdio.h>

int main()
{
	int a = 1;
	do
	{
		printf("%d ",a);
		a++;
	} while (a<=10);
	return 0;
}

在VS2019中的运行结果:

2.do-while循环的练习

输入一个数字,判断它是几位数。

例如:

输入:0

输出:1

参考代码:

cpp 复制代码
#include <stdio.h>

int main()
{
	int num = 0;
	int count = 0;
	scanf("%d",&num);
	do
	{
		count++;
		num = num / 10;
	} while (num);
	printf("count=%d\n",count);
	return 0;
}

在VS2019中的运行结果:

仔细查看此处的代码,会发现它避免了输入为0输出也为0。这是因为do-while循环至少执行一次循环。

3.do-while循环的break和continue

while循环和for循环的break和continue问题我在之前的博客中有所提及:

C语言番外篇(3)------------>break、continue CSDN

这篇文章提及的是do-while循环的break和continue问题。

(1)break

参考代码:

cpp 复制代码
#include <stdio.h>

int main()
{
	int a = 1;
	do
	{
		if (5 == a)
			break;
		printf("%d ",a);
		a++;
	} while (a<=10);
	return 0;
}

在VS2019中的运行结果:

(2)continue

参考代码:

cpp 复制代码
#include <stdio.h>

int main()
{
	int a = 1;
	do
	{
		if (5 == a)
			continue;
		printf("%d ", a);
		a++;
	} while (a <= 10);
	return 0;
}

在VS2019中的运行结果:

相关推荐
老虎06278 分钟前
数据结构(Java)--位运算
java·开发语言·数据结构
yanjiaweiya9 分钟前
云原生-集群管理续
java·开发语言·云原生
Swift社区9 分钟前
Swift 解 LeetCode 320:一行单词有多少种缩写可能?用回溯找全解
开发语言·leetcode·swift
写不出来就跑路15 分钟前
暑期实习感悟与经验分享:从校园到职场的成长之路
java·开发语言·经验分享·spring boot
weixin_472339466 小时前
高效处理大体积Excel文件的Java技术方案解析
java·开发语言·excel
枯萎穿心攻击6 小时前
响应式编程入门教程第二节:构建 ObservableProperty<T> — 封装 ReactiveProperty 的高级用法
开发语言·unity·c#·游戏引擎
Eiceblue8 小时前
【免费.NET方案】CSV到PDF与DataTable的快速转换
开发语言·pdf·c#·.net
m0_555762908 小时前
Matlab 频谱分析 (Spectral Analysis)
开发语言·matlab
学不动CV了9 小时前
ARM单片机启动流程(二)(详细解析)
c语言·arm开发·stm32·单片机·51单片机
浪裡遊9 小时前
React Hooks全面解析:从基础到高级的实用指南
开发语言·前端·javascript·react.js·node.js·ecmascript·php