当前位置:网站首页>【C语言学习笔记(五)】while循环与for循环
【C语言学习笔记(五)】while循环与for循环
2022-08-03 18:35:00 【傻萌的路飞】
一、while循环
1.while循环形式
while循环的通用形式如下所示:
while(expression)
statement
其中,expression是关系表达式,statement可以是以分号结束的简单语句,也可以是用花括号括起来的复合语句。在while循环中,当expression为真(一般来说,非零),执行statement部分一次,然后再次判断expression。在expression为假(0)之前,循环的判断和执行一直重复进行,每一次循环都被称为迭代。
2.while循环的入口和终止
while循环是使用入口条件的有条件循环。所谓的“有条件”指的是语句部分的执行取决于测试表达式描述的条件,只有当满足测试条件的时候才能进入循环体。
while循环有一点非常重要:在构建while循环时,必须让测试表达式的值有变化,表达式最终要为假,这样才能终止循环;否则,循环就不会终止。(此处指提到用while括号中表达式来终止,除此之外,break也可以终止while循环)。需要明确一点,只有在对测试条件求值时,才决定是终止还是继续循环。
3.关系运算符
while循环中经常依赖测试表达式作比较,这样的表达式被称为关系表达式,出现在关系表达式中的运算叫做关系运算符。如下表是一些关系运算符。
| 运算符 | 含义 |
|---|---|
| < | 小于 |
| <= | 小于等于 |
| == | 等于 |
| > | 大于 |
| >= | 大于等于 |
| != | 不等于 |
| ** |
二、for循环
1.for循环形式
for循环的基本形式如下:
for(initialize;test;update)
statement
for循环把初始化、测试和更新3个行为组合在一处。从上述for循环的基本形式中可以看到,关键字for后面中的圆括号有三个表达式,分别用两个分号隔开。第1个表达式initialze是初始化,只会在for循环开始时执行一次。第2个表达式test是测试条件,在执行循环之前对表达式求值。如果表达式为假,循环结束。第3个表达式update执行更新,在每次循环结束时求值。
如下是for循环一个举例,其要求是连续输出5句“I love China!”。
#include <stdio.h>
int main(void)
{
int i;
for(i = 0;i < 5;i++)
printf("I love China!"\n);
return 0;
}
2.逗号运算符
逗号运算符扩展了for循环的灵活性,以便在循环头中包含更多的表达式。逗号运算符有两个性质,一是,逗号运算符保证了被它分隔的表达式从左往右求值(换而言之,逗号就是一个序列点,所有逗号左侧项的所有副作用都在程序执行逗号右侧项之前发生)。二是,整个逗号表达式的值是右侧项的值。
while和for都可以实现循环操作,其中while循环是不确定循环,其在测试表达式为假之前预先不知道要执行多少次循环;for循环是计数循环,其在循环执行之前就知道要重复执行多少次。
边栏推荐
- 5000元价位高性能轻薄本标杆 华硕无双高颜能打
- 开篇-开启全新的.NET现代应用开发体验
- BinaryIndexedTrees树状数组
- 程序员如何分分钟搞垮一个项目?
- 有人知道flink sql 使用tableEnv.executeSql执行后,怎么获取到任务运行的
- U-Net生物医学图像分割讲解(Convolutional Networks for BiomedicalImage Segmentation)
- [数据集][VOC]老鼠数据集voc格式3001张
- MD5是对称加密还是非对称加密,有什么优缺点
- WEB 渗透之SSRF
- fatal error: jni.h: No such file or directory
猜你喜欢

技术开发人员常用的安全浏览器
![选出表中的中位数记录[构造左右边界 || 问题转换]](/img/02/8d8e515c994c8a1a364f1e299d73f7.png)
选出表中的中位数记录[构造左右边界 || 问题转换]

Confused!Ali was abused on the one hand, but was fortunate to be promoted to Huawei's technology, and successfully got the offer, with an annual salary of 40w

Shell编程案例

云渲染的优势与劣势

常见荧光染料修饰多种基团及其激发和 发射波长数据一览数据

【汇编语言02】第2章 寄存器——理论知识

BinaryIndexedTrees树状数组

MD5是对称加密还是非对称加密,有什么优缺点

Don't look down upon the WebSocket!Long connection, stateful, two-way, full-duplex king is Fried
随机推荐
201712-3 CCF Crontab满分题解
微信小程序分享功能
PHP基础笔记-NO.1
Postgresql 备份大小情况!
fatal error: jni.h: No such file or directory
xxl-job 实现email发送警告的代码解析(一行一行代码解读)
Don't look down upon the WebSocket!Long connection, stateful, two-way, full-duplex king is Fried
基于PHP7.2+MySQL5.7的回收租凭系统
【美丽天天秒】链动2+1模式开发
云图说丨初识华为云微服务引擎CSE
快手通过国际权威信息安全和隐私保护认证,安全能力达到国际领先水平
cocos creater 3.x 插件安装方法
vulnhub pyexp: 1
pydev debugger: warning: trying to add breakpoint to file that does not exist: /tmp/xxx
动态打印菱形
WEB 渗透之RCE
flink-sql 客户端,咋回事 我show tables 报错
一文搞懂│php 中的 DI 依赖注入
H.265网页播放器EasyPlayer获取视频流正常,但是播放出现黑屏是什么原因?
excel写入不完全sheet.append方法(openpyxl)