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

相关推荐
饭碗的彼岸one3 分钟前
C++设计模式之单例模式
c语言·开发语言·c++·单例模式·设计模式·饿汉模式·懒汉模式
hope_wisdom38 分钟前
C/C++数据结构之栈基础
c语言·数据结构·c++··stack
青铜发条39 分钟前
【Qt】PyQt、原生QT、PySide6三者的多方面比较
开发语言·qt·pyqt
wanzhong23332 小时前
学习triton-第1课 向量加法
开发语言·python·高性能计算
三千道应用题2 小时前
C#语言入门详解(18)传值、输出、引用、数组、具名、可选参数、扩展方法
开发语言·c#
忧郁的蛋~2 小时前
使用.NET标准库实现多任务并行处理的详细过程
开发语言·c#·.net
dragon_perfect2 小时前
全流程基于Yolov8实现在Label-Studio实现半自动标注,已经把整个流程理清楚,把所有的坑解决。
开发语言·python·yolo·labelstudio
kalvin_y_liu2 小时前
四款主流深度相机在Python/C#开发中的典型案例及技术实现方案
开发语言·python·数码相机
劲镝丶2 小时前
malloc概述
c语言·开发语言·c++
1373i3 小时前
【Python】pytorch数据操作
开发语言·pytorch·python