C语言之循环语句

C语言设计之循环语句例题 循环语句是在C语言经常遇到的一种控制语句。在实际应用中的许多问题,都会涉及重复执行一些操作,如级数求和、穷举或迭代求解等。 C语言提供for、while、do-while三种循环语句来实现循环结构。 1.while语句属于当型循环,用于循环次数未知,条件控制的循环。while循环的一般形式为: while(表达式) { 循环体语句 } 2.for语句用于实现当型循环控制结构。在循环顶部进行循环条件测试,如果循环条件第一次测试为假,则循环体一次也不执行。for循环的一般形式为: for(表达式1;表达式2;表 阅读详情

一.while循环

        while语句的语法结构和if语句的语法结构非常相似。

1.if和while的对比

if(表达式)
    语句;

while(表达式)
    语句;//如果循环体想包含更多语句,可以使用大括号{}

        具体写个代码来对比看吧

if语句

#include<stdio.h>
int main()
{
    if(1)
        printf("hehe\n");//if后面的条件满足,打印一次hehe
    return 0;
}

while语句

#include<stdio.h>
int main()
{
    while(1)
        printf("hehe\n");//while后边的条件满足,死循环打印hehe
       return 0;
}

这就是他们的区别,while语句是可以实现循环效果的。

(如果觉得if语句不过瘾的,可以看看博主的这篇文章https://blog.youkuaiyun.com/wait___wait/article/details/134805824?spm=1001.2014.3001.5502)

2.while语句执行流程图

(没有找到虚线在哪,之后会去学学怎么做图的,以后一定美观!)

        首先,上来就是执行判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执行循环语句,语句执行完后再继续判断,是否进行下一次判断。(break和continue的作用https://blog.youkuaiyun.com/wait___wait/article/details/135167810?spm=1001.2014.3001.5501)

        C语言中表达式结果0表示假,非0表示真。

3.while循环的实践

        练习:在屏幕上打印1-10的值

        参考代码

#include<stdio.h>
int main()
{
    int i = 1;//初始化
    while(i <= 10)//判断
    {
        printf("%d ", i);
        i++;//调整
    }
    return 0;
}

二.for循环

1.语法形式

        for循环是三种循环中使用最多的,for循环的语法形式如下:

for(表达式1; 表达式2; 表达式3)
    语句;

        表达式1 用于循环变量的初始化

        表达式2 用于循环结束条件的判断

        表达式3 用于循环变量的调整

2.for循环的执行流程

        首先执行 表达式1 初始化循环变量,接下来就是执行 表达式2 的判断部分,表达式2 的结果==0,则循环结束;表达式2 的结果如果!=0则执行循环语句,则循环语句执行完后,再去执行表达式3 ,调整循环变量,然后再去表达式2 的地方执行判断, 表达式2 的结果是否为0,决定循环是否继续。

        整个循环的过程中,表达式1初始化部分知被执行1次,剩下的就是表达式2、循环语句、表达式3在循环。

3.for循环实践

        在屏幕上打印1-10的值

参考代码:

#include<stdio.h>
int main()
{
    int i=0;
    for(i=1;i<=10;i++)
    {
        printf("%d ",i);
    }
    return 0;
}

运行结果:

练习:

        计算1-100之间3的倍数的数字之和

参考代码

#include<stdio.h>
int main()
{
	int i = 0;
	int sum = 0;
	for (i = 3; i <= 100; i += 3)
	{
		sum += i;
	}
	printf("%d\n", sum);
	return 0;
}

运行结果: 

while循环和for循环的对比

        for和while在实现循环的过程中都有初始化、判断、调整这三个部分,但是for循环的3个部分非常集中,便于代码的维护,而如果代码较多的时候while循环的三个部分就比较分散,所以从形式上for循环更优一些。

三.do while循环

1.语法形式

        在循环语句中do while 语句的使用最少,它的语法如下:

do
    语句;
while(表达式);//一定要打上分号

        while和for 这两种循环都是先判断,条件如果有满足就进入循环,执行循环语句,如果不满足就跳出循环;

        而do while 循环则是先进入循环体,执行循环语句,然后再执行while后的判断表达式,表达式为真,就会进行下一次,表达式为假,则不再继续循环。

        while的后面一定要打上分号。

2.do while循环的执行流程

        在do while循环中,先执行图上的“语句”,再去执行“判断表达式”,判断表达式结果是!=0,则继续循环,执行循环语句;判断表达式的结果==0,则循环结束。

        所以,在do while语句中循环体是至少执行一次的,这是do while循环比较特俗的地方。

3.do while实例

        在屏幕上打印1-10的值

#include<stdio.h>
int main()
{
	int i =1;
	do
	{
		printf("%d ", i);
		i++;
	}while (i <= 10);
	return 0;
}

运行结果: 

一般do while使用在循环体至少被执行一次的场景下,所以使用较少一些。 


    练习

输入一个正整数,计算这个整数是几位数?
例如:
输入:1234  输出:4
输入:12    输出:2

参考代码:

int main()
{
	int n = 0;
	scanf("%d", &n);
	int count = 0;
	do
	{
		count++;
		n = n / 10;//n/10得到商的整数部分,如1234/10=123,这样得到一个减少位数的效果
	} while (n);//当n=0时,结束循环
	printf("%d", count);
	return 0;
}

运行 示例:

        这里并非必须使用do while语句,但是这个代码就比较适合使用do while循环,因为n及时是0,也是1位数,要统计位数。

四.循环的嵌套

        将while、for、do while这三种循环嵌套在一起才能更好的解决问题,就是我们所说的:嵌套循环。

        练习: 

找出100-200之间的素数,并打印在屏幕上。(素数又称质数,只能被1和本身整除的数字)

#include<stdio.h>
int main()
{
	int i = 0;
	//循环产生100-200的数字
	for (i = 100; i <= 200; i++)
	{
		//判断i是否为素数
		//循环产生2 - i-1之间的数字
		int j = 0;
		int flag = 1;//假设i是素数
		for (j = 2; j < i; j++)
		{
			if (i % j == 0)
			{
				flag = 0;
				break;
			}
		}
		if (1 == flag)
			printf("%d ", i);
	}
	return 0;
}

运行结果: 

(期待)

LM339 vs LM358:手把手教你选对比较器和运放(附电路设计避坑指南) 本文深入比较了LM339比较器与LM358运算放大器的核心差异,包括内部架构、输出结构和典型应用场景。通过实测数据和电路设计案例,揭示了选型要点和常见设计陷阱,帮助工程师在电源监控、传感器信号调理等场景中做出正确选择。 阅读详情

相关推荐

当Kmer遇到多倍体:复杂基因组Survey分析中的避坑指南

本文针对小麦、棉花等多倍体及高杂合复杂基因组的Survey分析,深入解析了Kmer分布图解读中的常见陷阱。文章重点探讨了如何超越理想二倍体模型,利用Smudgeplot等工具准确判断基因组倍性,并提供了从参数优化、污染判断到结果验证的全流程实战指南,帮助研究者规避错误,获得更准确的基因组大小、杂合度等关键信息。

yhn45678901的博客 1006

C语言的循环语句

循环语句是用于重复执行某条语句(循环体)的语句,它包含一个控制表达式,每循环执行一次都要对控制表达式进行判断,如果表达式为真,则继续执行循环。C语言提供了3中循环语句,分别为while语句,do while语句和for语句。

奔梦记 3万+

C语言——循环语句(详解)

C语言循环语句(while循环、do while循环、for循环)

sinzz的博客 3万+

第1关:STL模板之queue实例一:最少个数

头歌自创答案

xiyunSacire的博客 817

python爬取淘宝数据

python爬取淘宝数据淘宝评论 淘宝评论 打开淘宝,选择打开需要爬取的商品的评论。在谷歌浏览器选择开发者工具,选择network,找到list_detail_rate.htm?itemId=624466733121,点击headers、previews,可以看见相应的评论数据。 爬取一页屏评论代码如下 import re import requests headers = { 'Referer': '在headers中', 'User-Agent': '在

qq_36333776的博客 5797

C语言-循环语句

C语言的循环语句包括三种下面我依次对这三种循环语句进行详细介绍与解释。

flin666的博客 1万+

Qt —— 在Win11下“Qt for Android“开发环境,通过USB在真机(华为Meta60 PRO)上调试运行,并打包APK并在真实手机运行

Qt —— 在Win11下“Qt for Android“开发环境,打包APK并在真实手机运行

310

C语言语句篇——循环语句

Hello~我是芝士,前一篇分享的是分支语句,本篇给大家分享循环语句,主要有三个循环语句:while循环、do while 循环和 for 循环。

weixin_72923265的博客 5901

别让 Claude Code 一直问你“能不能执行“:权限配置完全指南

Claude Code 提供了一套精细的权限配置机制,配置好权限设置,可以提速不少。这个小技巧需要掌握一下。

沐风 3839

计算机视觉:AI生成内容(AIGC)对视觉领域的冲击

计算机视觉:AI生成内容(AIGC)对视觉领域的冲击​ 人工智能,计算机视觉,大模型,AI,在信息技术日新月异的当下,计算机视觉作为人工智能领域的关键分支,已经深度融入了我们生活与工作的各个层面。从安防监控系统里精准的人脸识别,助力维护公共安全;到工业生产线上高效的产品质量检测,保障产品品质;再到医疗影像分析中为疾病诊断提供有力支持,计算机视觉技术凭借其对视觉信息的强大处理与理解能力,不断推动着各行业的发展与变革。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 17万+

C语言循环语句

goto语句一般用在比如多重循环中,想要一次性跳出循环的情况,但是能用goto语句的地方都是可以用其他方法解决的,只是goto可能更方便。在循环执⾏的过程中,如果需要提前终⽌循环,就需要用到跳转语句。这个方法比较笨,但也是一种解决方法,其实我们所说的算法就是不同的问题有不同的解法,每有一种解法,就有一种算法,算法之间的好坏,主要看执行效率。这里n–是后置自减,判断n的值时先使用,10为真,后自减,再打印10 - 9,依次执行当n=1时,为真,自减为0,打印10 - 0。例:打印1~10的数。

2302_82164115的博客 2005

大数据NiFi(十一):NiFi入门案例一

注意:数据写出的目录可以不需要提前在对应节点上创建,默认是可以自动创建,可以通过“Create Missing Directories”属性配置。将输出文件的权限设置为此属性的值,格式必须是UNIX rwxrwxrwx,用-来代替被拒绝的权限(例如rw-r--r--)或八进制数字(例如644),可以使用表达式,例如${file.permissions}。这里需要使用到的处理器是“GetFile”和“PutFile”,完成以上需求对“GetFile”和“PutFile”相关属性进行配置。

Lansonli(蓝深李)的博客 1487

【C语言】循环语句

本文介绍了C语言中三种循环语句的使用方法。for循环适用于已知或未知循环次数的情况,通过示例演示了1加到100的计算过程。while循环在条件为真时重复执行,重点讲解了循环条件和避免死循环的注意事项。do-while循环的特点是至少执行一次循环体,并通过1加到100的示例说明其与while循环的区别。文章详细分析了每种循环的执行流程和适用场景,强调循环变量的控制和终止条件的重要性,为C语言初学者提供了清晰的循环结构学习指南。

"謓泽"正在路上朝着"攻城狮"方向"前进四"! 9985

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

C语言——循环语句及跳转语句

循环语句及跳转语句

Ruyi_baobao的博客 2209

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

c语言循环语句

本文介绍了C语言中的三种循环语句:while、for和do...while。重点讲解了while循环的结构和使用方法,包括break和continue语句的作用,以及getchar()函数的使用场景。同时详细说明了for循环的语法特点、控制变量建议和变种写法,并对比了do...while循环与其他两种循环的区别。文章通过具体代码示例展示了每种循环的基本用法和注意事项,其中for循环因结构清晰被推荐为主要使用方式。

y3245239334的博客 1632

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

C语言之四大循环语句

文章目录前言一、do...while() 循环1. 图示流程2. 代码流程3. 示例代码 (1到100求和)二、while() 循环1. 图示流程2. 代码流程3. 示例代码 (1到100求和)三、for() 循环1. 图示流程2. 代码流程3. 示例代码 (1到100求和)四、goto 循环1. 代码流程2. 示例代码-1(1到100求和)3. 示例代码-2 前言        C语言有四大循环语句,他们之间可以进行任意转换。 本文将首

liung_的博客 1万+

【C语言初阶】循环语句 —— while语句

本节介绍了循环结构中的while语句,给出了它的语法结构;讲解了在while语句中分别使用break语句和continue语句会起到什么样的效果。

共同学习,相互分享。 4426

[C语言]分支循环语句

Branch loop statement

qq_66767938的博客 1049

C语言中的循环语句

在多层循环代码中,如果想要跳出循环,使用break语句不太便利,因为一个break只能跳出一层循环,多层就要使用多个break,不太方便,但如果使用goto语句将会直接快速的跳出循环,十分便利。当然,不是只有do...while语句这一种算法,但是这个代码更适合使用 do...while 循环,由于这个循环至少执行一次,所以即使在 n=0 的时候也是会统计位数的。只要break被执行,那么beak外的第一层循环就终止了,所以如果在循环中,想要在某种体条件下终止循环,可以借助于 break语句来完成。

wzsygcg的博客 1815

【C语言初阶】循环语句 —— dowhile语句

本节给出了C语言循环结构中的do while语句,给出了在do while语句中使用break和continue的不同情况;最后给出了几道使用循环结构的常见练习题目。

共同学习,相互分享。 2705

C语言——循环语句+转向语句

goto 语句如果使⽤的不当,就会导致在函数内部随意乱跳转,打乱程序的执⾏流程,所以我们的建议是能不⽤尽量不去使⽤;如果 for 循环想提前退出得使⽤ break ,⼀个 break 只能跳出⼀层 for 循环,如果3层循环嵌套就得使⽤3个 break 才能跳出循环,所以在这种情况下我们使⽤ goto 语句就会更加的快捷。表达式的值不为0,则执⾏循环语句,语句执⾏完后再继续判断,是否进⾏下⼀次判断。整个循环的过程中,表达式1初始化部分只被执⾏1次,剩下的就是表达式2、循环语句、表达式3在循环。

2203_76003626的博客 1408

C语言循环语句的用法——while循环

在c语言中我们经常会需要重复的进行一些指令,但是不断的编辑重复代码不仅很繁琐,还容易出现bug,因此循环语句的使用就非常有必要,今天我们要学习的就是循环语句其中一种的while循环。 1、while循环 while循环的基本形式如下: while(表达式) { 循环语句; } 例如我们要在屏幕上打印1~10的数字就可以使用while循环来实现,具体如下: #include <stdio.h> int main() { int a = 1;//我们要打印1~10的数字,..

awaqhhh的博客 3万+

c语言循环语句的使用

在循环执行的过程中,如果某些状况发生的时候,需要提前终止循环,这是非常常见的现象。c语言中提供了break和continue两个关键字,就是应用到循环中的。

2302_81017491的博客 1544

详解C语言循环语句

C语⾔是结构化的程序设计语⾔,这⾥的结构指的是顺序结构选择结构循环结构。此前通过详解C语言分支语句对选择结构进行剖析。本篇文章将对其中的循环结构进行详细的分析。循环语句为程序实现重复执行特定代码段提供了灵活的方式,开发者可以根据具体需求选择合适的循环结构来实现相应的逻辑。

lxy370198409的博客 1645
上一篇: break与continue详解
下一篇: sizeof,sizeof与strlen的区别
大力初奇迹
博客等级 码龄3年 1294粉丝 54原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值