IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 【初学者入门C语言】之while、do-while、break及continue语句(五) -> 正文阅读

[C++知识库]【初学者入门C语言】之while、do-while、break及continue语句(五)

0ce056f889d7490e9509bb1dfbb0ad63.png个人主页:天寒雨落的博客_CSDN博客-python,c++,安装教程领域博主

💬 刷题网站:一款立志于C语言的题库网站蓝桥杯ACM训练系统 - C语言网 (dotcpp.com)??

?

0ce056f889d7490e9509bb1dfbb0ad63.png特别标注:该博主将长期更新c语言内容,初学c语言的友友们,关注博主不迷路!

一、while语句

? ? ? 1.形式

? ? ? ? ? ? ? ? while(条件表达式){

? ? ? ? ? ? ? ? ? ? ? ? 循环体语句;

? ? ? ? ? ? ? ? }

? ? ? ? 如果满足条件表达式则执行循环体语句,不满足,则循环结束,循环结束次数为0?

? ? ? ? 2.实例

? ? ? ? ? ? ? ? 1.题目

输出循环控制变量i的值

? ? ? ? ? ? ? ? 2.代码

#include "stdio.h"

int main() {
	int i = 1;

	while (i <= 10) {
		printf("i=%d\n", i);
		i++;
	}

	return 0;
}

? ? ? ? ? ? ? ? ? 3.运行结果

edbd470111464a2bbde51990370bcf52.png

?注意while()后面是{不是;

二、do-while

? ? ? ? 1.形式

? ? ? ? ? ? ? ? do{

? ? ? ? ? ? ? ? ? ? ? ? 循环体语句;

}while(条件表达式);

先执行一次循环体内的语句,在计算条件表达式的值,如果为真(非0),则接着执行循环体语句,以此类推。

? ? ? ? ?2.易错点

1.与while语句和for语句都不同的是,do-while是先执行一次循环体内的语句,然后在判断条件表达式。

2.do-while的while(条件表达式)后面必须加;。

3.这并不像for循环有增值表达式,需要我们自己在while循环体语句里加,不然就会死循环。

????????3.实例

? ? ? ? ? ? ?1.题目

求sum=1+2+3+......+n的值

? ? ? ? ? ? ?2.代码

#include "stdio.h"

int main() {
	int sum = 0, i = 1;

	do {
		sum += i;
		i++;
	} while (i <= 100);

	printf("sum=%d", sum);
	return 0;
}

? ? ? ? ? 3.执行结果

f761683a944a4057bc4c3446cf95f81b.png

? ? ? ? ?4.相关报错

? ? ? ? ? ? ? ? 1.[错误] 期待 ';' 在此之前: 'printf'

? ? ? ? ? ? ? ? ? ? ? ? 原因:在while(条件表达式)后面没有加;

? ? ? ? ? ? ? ? ? ? ? ? 解决办法:在在while(条件表达式)后面加;

三、break语句

? ? ? ? 1.说明

? ? ? ? ? ? ? ? break;

? ? ? ? ? ? ? ? 强制终止当前的循环语句,去执行循环语句下面的一个语句,通常与if语句连用,当满足什么条件时直接退出循环。

? ? ? ? ?2.实例

? ? ? ? ? ? ? ? 1.题目

在100~200找到第一个能被16整除的数

? ? ? ? ? ? ? ? ?2.代码

#include "stdio.h"

int main() {
	int i = 100;

	do {
		if (i % 16 == 0) {
			break;
		}

		i++;
	} while (i <= 200);

	printf("在100~200第一个能被16整除的数是%d", i);

	return 0;
}

? ? ? ? ? ? ? ? 3.运行结果

9121763842d74688a83c3e6a4d3ad188.png

四、continue语句?

? ? ? ? 1.说明

? ? ? ? ? ? ? ? continue;

? ? ? ? ? ? ? ? 不在执行循环体下面的语句,结束本次循环,执行下一次循环。

? ? ? ? ?2.实例

? ? ? ? ? ? ? ? 1.题目

输出1~10不能被3整除的数

? ? ? ? ? ? ? ??2.错误代码

#include "stdio.h"

int main() {
	int i = 1;

	do {
		if (i % 3 == 0) {
			continue;
		}

		printf("%5d", i);
		i++;
	} while (i <= 10);


	return 0;
}

? ? ? ? ? ? ? ? 3.运行结果

a23d4fcc642146bbbe14176cd246a0d9.png

? ? ? ? ? ? ? ? 4.解析

? ? ? ? ? ? ? ? ? ? ? ? 为什么到2后面就没有输出了呢?

? ? ? ? ?因为continue是不在执行循环体里continue下面的语句,结束本次循环,什么意思呢?也就是说啊,执行2都正常输出,到3的时候,满足i%3==0,执行continue语句,然后后面的i++没有执行呀,也就是说i的值到这里一直没有变,所以进入了死循环,下面介绍如何正确的在do-while使用continue语句。

? ? ? ? ? ? ? ? ?5.正确代码

#include "stdio.h"

int main() {
	int i = 0;

	do {
		i++;

		if (i % 3 == 0) {
			continue;
		}

		printf("%5d", i);
	} while (i <= 10);


	return 0;
}

? ? ? ? ? ? ? ? 6.运行结果

b857941c3f264e4f8b9b1ac45fede669.png

五、总结

?需要区分while和do-while的区别,如果循环语句次数是已知的,常用for循环语句,如果是未知的,常用while或do-while语句。当然,这三个语句是可以互相转化的。

? ? ? ? ??

👍+??+??是对博主最大的鼓励与支持!!!

?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-24 20:38:17  更:2022-09-24 20:38:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:11:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码