引言
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。它在编程语言中具有举足轻重的地位。
此文为【C语言必知必会】系列第七篇,介绍C语言的循环结构,结合专题优质题目,带领读者从0开始,深度掌握知识点。
1️⃣ 概念介绍
循环结构是指在程序中需要反复执行某个功能而设置的一种程序结构。
它由循环体中的条件,判断继续执行某个功能还是退出循环。
根据判断条件,循环结构又可细分为以下两种形式:
先判断后执行的循环结构 和 先执行后判断的循环结构
举个例子:当我们计算阶乘3!时,可以看作初始值为1的i的自增再相乘,即i*(i+1)*(i+2)
如果计算2023!的时候,就不需要一直让程序直接计算1*2*3*4*5*6*......*2023
而这,就是循环结构的优势。
2️⃣代码过渡
在正式开始选择循环结构的代码实现之前,我们需要掌握一些运算符等的知识点。
自加、自减运算符
形式:前缀式 ++i, --i 后缀式 i++, i–
++i和i++都是自增,但a=++i表示先对i自增,再赋值给a
a=i++表示先将i赋值给a,i再自增
我们看以下代码
int i=3, j=3, x, y;
x=++i; y=j--;
printf(“%d,%d;%d,%d\n", i, x, j,y);
程序的结果是4,4,2,3
是因为x=++i中,i自增为4,再赋值给x,所以x也为4
y=–j中,j先赋值给y,所以y为3,j再自减,所以j最后为2
注意:仅当独立成句时,2者结果相同,即 i++ 与 ++i 得到的 i 是一样的
逗号运算符
形式与作用:
形式:表达式1 ,表达式2,…, 表达式n
作用:将多个表达式连接成一个表达式
求解顺序:式1->式2,最后求式n,以式n值为结果值。
如下
int i, j;
j=( i=2, ++i );
printf( "i=%d,j=%d\n", i, j );
先计算i=2,即2,再计算++i,即3,所以最后j=3,程序输出3,3
3️⃣知识点讲解
这一节我们将细致讲讲while语句形式与执行过程、do while语句形式与执行过程、for语句形式与执行过程
while语句
基本形式:
while( 表达式 ) {
语句 }
举个例子:
int i=1; /*循环变量初值*/
while( i<=2 ) /*循环头,循环条件*/
{
puts("$$$$"); //循环体
puts("$$$$"); //循环体
i++; /*使循环趋于结束的操作*/
}
当while表达式为真时,执行循环体内的语句,否则结束while语句并执行其后的语句。
什么意思呢?我们看上面这个例子:
一开始i为1,由于满足i<=2这个条件,所以进入while语句,输出两行的$$$$