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中的运行结果:

相关推荐
2的n次方_1 小时前
CANN Ascend C 编程语言深度解析:异构并行架构、显式存储层级与指令级精细化控制机制
c语言·开发语言·架构
java干货2 小时前
为什么 “File 10“ 排在 “File 2“ 前面?解决文件名排序的终极算法:自然排序
开发语言·python·算法
_F_y2 小时前
C语言重点知识总结(含KMP详细讲解)
c语言·开发语言
毕设源码-郭学长2 小时前
【开题答辩全过程】以 基于python的二手房数据分析与可视化为例,包含答辩的问题和答案
开发语言·python·数据分析
无小道2 小时前
Qt——常用控件
开发语言·qt
aini_lovee2 小时前
MATLAB基于小波技术的图像融合实现
开发语言·人工智能·matlab
郝学胜-神的一滴2 小时前
深入解析C/S模型下的TCP通信流程:从握手到挥手的技术之旅
linux·服务器·c语言·网络·网络协议·tcp/ip
R1nG8633 小时前
多线程安全设计 CANN Runtime关键数据结构的锁优化
开发语言·cann
初次见面我叫泰隆3 小时前
Qt——5、Qt系统相关
开发语言·qt·客户端开发
亓才孓3 小时前
[Class的应用]获取类的信息
java·开发语言