☰
C语言分支与循环语句(二)
2026/9/28 20:56:15 网站建设 项目流程
2.1.4 练习1

输入一个正的整数,逆序打印这个整数的每一位

例如:

输入: 1234 输出: 4 3 2 1

输入: 521 输出: 1 2 5

题目解析:

1. 要想得到n的最低位,可以使用n%10的运算,得到的余数就是最低位,如1234%10得到4

2.要想去掉n的最低位,找出倒数第二位,则使用n = n / 10 操作就可以去掉最低位,如:n=1234/10得到123,123相较于1234就去掉了最低位,123%10就得到倒数第二位3

3.循环1和2两个步骤,在n变为0之前,就能得到所有的位

参考代码:

2.1.5 练习2

输入一个正整数,打印所有小于或等于这个数的正偶数

参考代码:

2.1.6 练习3

全部练习当中最好玩的一个

模拟游戏打boss时,攻击掉血的场景

参考代码:

2.2 for 循环
2.2.1 语法形式

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

//形式1

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

语句;

//形式2

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

{

语句;//如果循环体想包含更多的语句,需要加上大括号

}

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

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

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

2.2.2 for 循环的执行流程

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

在整个循环的过程中,表达式1初始化部分只被执行一次,剩下就是在表达式2、循环语句、表达式3之间循环,直到表达式2的条件不满足,跳出循环。

2.2.3 for 循环的实践

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

参考代码:

2.2.4 while和for对比

for 循环语句

while循环语句

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

2.2.5 for循环的特殊写法
2.2.5.1 for循环中的三个表达式可以选择性省略

判断部分被省略,意味着判断部分恒成立,可能会造成死循环

初始化条件可以选择性不写,系统会根据后续判断条件和调整代码,并结合前面初始化的变量自动填入初始化的数据。

2.2.5.2 C99标准中,for循环支持新写法

循环变量可以在初始化部分创建,这样写的循环变量,只能在循环内部使用,出了循环就不能使用了。这样处理,虽然看上去缩小了变量的适用范围,是不利于代码实现的,但是这样处理,多个循环,或者其他的代码想要使用同一个变量就不会互相干扰了,也存在他的益处。

2.2.5.3 多个变量控制for循环

初始化部分的b=0,a=10和调整部分的b++,a--是逗号表达式式。

逗号表达式,就是用逗号隔开的多个表达式

代码块

exp1,exp2,exp3,...,expN

逗号表达式从左向右依次进行,整个表达式的结果是最后一个表达式的结果

例子:

题解:c = 15

从左向右计算,其判断作用的是最右边的d>0

2.2.6 练习1

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

小小的优化,如果能直接产生3的倍数的数字就省去了多余的循环和判断

2.2.7 练习2

计算机银行存款结余

银行利息是3%,本金10000元

计算出5年中,每一年年底本金+利息的结余

参考代码:

2.3 do-while 循环
2.3.1 语法形式

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

代码块

1 do

2 语句;

3 while(表达式);

while和for这两种循环都是先判断,条件如果满足就进入循环,执行循环语句,如果不满足就跳出循环;而do-while循环则是先直接进入循环体,执行循环语句,然后再执行while后的判断表达式,表达式为真,就会进行下一次,表达式为假,则不再进行循环。

2.3.2 do-while循环的执行流程

在do-while循环先执行图上的“语句”,执行完语句,再去执行“判断表达式”,判断表达式的结果不等于0,则继续循环,执行循环语句;判断表达式的结果为0,则循环结束。

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

2.3.3 do-while循环的实例

在屏幕上打印1~10的值:

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

2.3.4 练习1

输入一个正整数,计算这个整数是几位数

例如:

输入:1234 输出:4

输入:12 输出:2

输入:0 输出:1

z

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

2.3.5 练习2

1.写代码确保只能输入一个正整数,如果是0或者负数,则提示“输入错误,请输入正整数”,直到正确输入

2.然后计算这个整数是几位数

2.4 break和continue语句

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

break的作用是用于永久的终止循环,只要break被执行,直接就会跳出循环,继续往后执行

continue的作用是跳出本次循环中continue后面的代码,在for循环和while循环中有所差异

生活化举例:

比如,你和你的朋友在KTV唱歌,计划唱3个小时

1.遇到不喜欢的歌,直接跳过,继续唱下一曲,就是continue

2.如果突然停电了,即使时间还没到,也没法继续再唱了,就是break

2.4.1 while循环中的break和continue

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询