当前位置: 首页 > news >正文

C语言入门(七)while和do-while循环

while循环

基本语法:

while(表达式)

        循环体;

执行流程:

第1步:计算表达式的值,若表达式的值为“真”,则执行第2步;若表达式为“假”,则转到第4步;

第2步:执行循环体语句。

第3步:返回第1步。

第4步:结束循环,执行while语句的下一条语句。

注意:while语句的特点是先判断循环条件,后执行循环体语句。


使用示例:

//输入一个正整数n,计算n!
#include<stdio.h>
int main()
{   
	int i; long n, fact;
	i = 2; fact = 1;
	printf("请输入n的值:");
	scanf("%ld", &n);
	while (i <= n)
	{
		fact = fact * i;
		i += 1;
	}
	printf("%ld! = %ld\n", n, fact);
	return 0;
}

do-while循环

基本语法:

do

        循环体

while(表达式);

执行流程:

第1步:执行循环体语句。

第2步:计算表达式的值,若表达式的值为“真”,返回第1步;若表达式的值为“假”,则执行第3步。

第3步:结束循环,执行do-while语句的下一条语句。

注意:do-while语句的特点是先执行循环体,后判断循环条件。因此,do-while循环至少要执行一次循环体。


改变循环结构的跳转语句

break

停止后期的所有的循环,直接终止循环。

continue

终止本循环,本次continue后的代码不会再执行,而是直接跳转到while语句的判断部分,进行下一次循环的入口判断。

相关文章:

  • 猿创征文|算法刷题——哈希
  • 基于阿里云 Serverless 快速部署 function 的极致体验
  • docker 如何查看运行中的容器
  • 数学建模十大算法02—插值与拟合(拉格朗日插值、三次样条插值、线性最小二乘法……)
  • 嵌入式Linux入门-异常与中断(流程+寄存器全解析)
  • java计算机毕业设计-体育新闻网站-源码+系统+数据库+lw文档+mybatis+运行部署
  • 基于QT的opencv照片美颜及背景更换
  • [车联网安全自学篇] Android安全之检测APK中异常处理代码是否暴露敏感信息
  • Java基础语法
  • 谷粒商城 renren-fast pom文件报红
  • A40I工控主板(SBC-X40I)LVDS显示屏测试
  • C语言实现环形缓冲区
  • TCP如何确保可靠传输(确认应答,重传机制,滑动窗口,流量控制)
  • Mock.js概述及模块化开发实践(一文足矣)
  • 06 SpringMVC异常处理
  • 深入了解以太坊
  • [NodeJS] 关于Buffer
  • 0x05 Python数据分析,Anaconda八斩刀
  • Brief introduction of how to 'Call, Apply and Bind'
  • CSS 提示工具(Tooltip)
  • JS实现简单的MVC模式开发小游戏
  • LeetCode29.两数相除 JavaScript
  • linux学习笔记
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • vue:响应原理
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 闭包--闭包作用之保存(一)
  • 技术胖1-4季视频复习— (看视频笔记)
  • 每天一个设计模式之命令模式
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • linux 淘宝开源监控工具tsar
  • ​HTTP与HTTPS:网络通信的安全卫士
  • # Apache SeaTunnel 究竟是什么?
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #pragma once与条件编译
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (译) 函数式 JS #1:简介
  • (转)一些感悟
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • .pyc文件还原.py文件_Python什么情况下会生成pyc文件?
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • @Valid和@NotNull字段校验使用
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [ 常用工具篇 ] POC-bomber 漏洞检测工具安装及使用详解
  • [Android Studio 权威教程]断点调试和高级调试
  • [Android]常见的数据传递方式
  • [BZOJ3211]:花神游历各国(小清新线段树)