首页 > 其他分享 >C语言中的for循环结构

C语言中的for循环结构

时间:2023-07-27 17:01:08浏览次数:32  
标签:语句 continue int C语言 break 循环 表达式 结构

C语言中的for循环结构

1.1 语法形式

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

for(表达式1; 表达式2; 表达式3)
    语句;//如果循环体想要包含更多语句,需要使用大括号

表达式1:用于循环变量的初始化
表达式2:用于循环结束条件的判断
表达式3:用于循环变量的调整

1.2 for循环的执行流程

image

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

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

1.3 for循环实践

练习:在屏幕上打印1~10的值
参考代码:

#include <stdio.h>

int main()
{
	int n = 0;
	for (n = 1; n <=10; n++)
		printf("%d ", n);
	return 0;
}

1.4 while循环和for循环的对比

image

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

6.5 练习

练习1:

计算1~100之间3的倍数的数字之和
参考代码如下:

int main()
{
	int count = 0;
	int total = 0;
	while (count <= 100) {
		if (count % 3 == 0)
		{
			total += count;
		}
		count += 1;
	}
	printf("%d\n", total);
	return 0;
}
#include <stdio.h>

int main()
{
	int count = 0;
	int total = 0;
	for (count = 3; count <= 100; count += 3)
	{
		total += count;
	}
	printf("%d\n", total);
	return 0;
}

6.6 break和continue语句

其实和while循环中的break一样,for循环中的break也是用于终止循环的,不管循环还需要循环多少次,只要执行到了break,循环就彻底终止了。

6.6.1 break语句

int main()
{
	int i = 1;
	for (i = 1; 1 < 10; i++)
	{
		if (i == 5)
		{
			break;
		}
		printf("%d ", i);
	}
	return 0;
}

break的作用是永久的终止循环,未来在某个条件下发生的时候,不想再继续循环的时候,就可以使用break来完成。

6.6.2 continue语句

int main()
{
	int i = 1;
	for (i = 1; i <= 10; i++)
	{
		if (i == 5)
			continue;//跳过本次循环,进入到下次循环
		printf("%d ", i);
	}
	return 0;
}

所在在for循环中continue的作用是跳过本次循环中continue后的代码,直接去到循环的调整部分。未来当某个条件发生的时候,本次循环无需执行后续某些操作的时候,就可以使用continue来实现。

这里是while循环和for循环中的continue的区别:
image

标签:语句,continue,int,C语言,break,循环,表达式,结构
From: https://www.cnblogs.com/bjx2020/p/17585419.html

相关文章

  • Redis数据结构总结
    Redis数据结构  SDS SimpleDynamicString 双向链表 list 字典 dict 整数集合 intset 跳跃表 zskiplist 压缩列表 ziplist ......
  • C语言中的while循环结构
    C语言中的while循环结构C语言提供了3中循环语句,while就是其中的一种,接下来就介绍一下while语句。while语句的语法结构和if语句非常相似。1.1if和while的对比if(表达式)语句;while(表达式)语句;//如果循环体想包含更多的语句,可以加上大括号写代码对比下:#includ......
  • Golang中结构体映射mapstructure库深入详解
    mapstructure用于将通用的map[string]interface{}解码到对应的 Go 结构体中,或者执行相反的操作。很多时候,解析来自多种源头的数据流时,我们一般事先并不知道他们对应的具体类型。只有读取到一些字段之后才能做出判断 +目录在数据传递时,需要先编解码;常用的方式是JSON编解码......
  • 16迭代器/for循环本质/异常处理
    常见内置函数(补充)1.help()查看注释信息help(len)2.id()返回一串相当于内存地址的数字print(id('jason'))3.int()类型转换、机制转换4.isinstance()判断数据类型print(type('jason')isstr)#类型判断别扭的很不推荐print(isinstance('jason',str......
  • 论文解读|Struck算法:基于结构化输出预测的自适应视觉目标跟踪框架
    原创|文BFT机器人01背景本文的背景是关于自适应视觉目标跟踪的研究。在传统的跟踪方法中,通常采用基于检测的方式,即尝试学习一个分类器来区分目标对象和其周围的背景。然而,这种方法存在一些问题,例如需要手动选择特征和参数,容易受到噪声和目标变化的影响。为了解决这些问题,本文提......
  • C语言中enum类型的全面解析,让你彻底掌握!
    一、枚举类型在实际情况中,有一些变量的取值范围是有限的。打个比方,一周只有七天,一年有十二个月,一个班每星期有六门课程等等。将这些变量定义为整型、字符型或其他类型是不合适的。为此,C语言引入了一种称为“枚举”的类型。在“枚举”类型的定义中,列出了所有可能的取值,而该“枚举......
  • C语言中的二进制数、八进制数和十六进制数
    C语言是一门使用数字的编程语言,其中包括了8进制和16进制的数字表示方法。这两种表示方法都可以用于整数和字符类型。8进制表示法8进制数字以数字0(零)和前缀0开头表示。例如,八进制数012表示为十进制的10。以下是一些示例:intx=012;//八进制的12,等价于十进制的10inty=0......
  • 数据结构练习笔记——求解由单链表表示的一元多项式的值
    求解由单链表表示的一元多项式的值【问题描述】一个形如\[a_0x^0+a_1x^1+...+a_nx^n\]的一元多项式含有n+1项,每一项由系数和指数唯一确定,可表示成由系数项和指数项构成的一个二元组(系数,指数),一元多项式则可以表示成二元组的集合{(a0,0),(a1,1),(a2,2)...(an,n)},可看成是数据......
  • for...in 循环和 for...of 循环的区别
    JavaScript中的for...in循环和for...of循环是两种不同的迭代方式,用于遍历数据结构中的元素。它们具有一些区别:for...in循环:用于遍历对象的可枚举属性(包括原型链上的属性)。迭代的是键(属性名),而非值。不保证迭代顺序,因为对象的属性顺序在规范中并未定义。比较适合用于遍......
  • 《MFC篇》MFC文件结构
    MFC文件结构(VS2015为例)原文链接:https://blog.csdn.net/fuhanghang/article/details/109826297在VS2015中创建完项目之后,会自动生成下面的文件结构:包括引用、外部依赖、头文件、源文件、资源文件、ReadMe。下面对这些文件进行分类描述:1、和项目名称相同的有两个文件比如说我......