admin管理员组文章数量:1794759
C语言—分支与循环(下)
1. While循环
C语言提供了3中循环语句,while为其中的一种。 while的语法结构和 if 语句非常相似。
1.1 if 和 while 的对比
代码语言:javascript代码运行次数:0运行复制if(表达式)
语句;
while(表达式)
语句;//如果循环体想包含更多的语句,可以加上大括号
1.2 while循环的执行流程
首先上来就是对表达式的判断,表达式的值为0,循环直接结束。表达式的值不为0,则执行循环语句,语句执行完再上来进行表达式判断。
1.3 while 循环的实践
在屏幕上打印1~10的值。
代码语言:javascript代码运行次数:0运行复制#include<stdio.h>
int main()
{
//i是循环变量
int i = 1;//初始化
while (i <= 10)//判断
{
printf("%d ",i);
i++;//调整
}
return 0;
}
输入一个正整数逆序打印每一位 比如输入 1234 打印 4321
代码语言:javascript代码运行次数:0运行复制分析: 1234要想得到4 只需 1234 % 10就可以。 然后我们就不需要4了,1234/10 得到123。 同理123想要得到3 只需123 % 10就可以。 以此类推。
#include<stdio.h>
int main()
{
int n = 0;
scanf("%d",&n);
while (n)
{
printf("%d ",n % 10);
n = n / 10;
}
return 0;
}
2. for循环
while循环中,如果循环体内的语句过多 初始化,调整,判断 就会越离散。而 for 循环将初始化,调整,判断三部分放在了一起。
2.1 for 循环的语法形式
代码语言:javascript代码运行次数:0运行复制for(表达式1;表达式2;表达式3)
语句;//如果循环体想包含更多的语句,需加上大括号
表达式1 用于循环变量的初始化 表达式2 用于循环结束条件的判断 表达式3 用于循环变量的调整
执行顺序
2.2 for 循环的执行流程
2.3 for 循环的实践
在屏幕上打印1~100所有3的倍数的和
代码语言:javascript代码运行次数:0运行复制#include<stdio.h>
int main()
{
int sum = 0;
for (int i = 1; i <= 100; i++)
{
if (i % 3 == 0)
{
sum = sum + i;
}
}
printf("%d",sum);
return 0;
}
3. do—while循环
3.1 语法形式
代码语言:javascript代码运行次数:0运行复制do
语句;
while(表达式);
3.2 do—while循环的流程图
3.3 do—while循环的实践
(1)在屏幕上打印1~3
代码语言:javascript代码运行次数:0运行复制#include<stdio.h>
int main()
{
int i = 1;
do
{
printf("%d ", i);
i++;
} while (i <= 10);
return 0;
}
特点: 循环体至少执行一次
(2)输入一个正整数,计算这个数字为几位数
代码语言:javascript代码运行次数:0运行复制要想计算一个正整数为几位,我们可以除以十去掉一位,当最后变成0时,说明所有位已经除掉。引入一个计数变量0,每除一次+1,最终就会计算出这个正整数的位数。
#include<stdio.h>
int main()
{
int n = 0;
scanf("%d",&n);
int count = 0;//计数变量
do
{
count++;
n = n / 10;
} while (n);
printf("%d",count);
return 0;
}
4. break和continue语句
代码语言:javascript代码运行次数:0运行复制break的作用是永久终止循环,只要breaak执行,就会直接跳出循环,继续往后执行。
代码语言:javascript代码运行次数:0运行复制continue的作用是跳过本次循环continue后边的代码,在for循环和while循环中有所差异。
4.1 while 循环中的break和continue
4.1.1 break举例
代码语言:javascript代码运行次数:0运行复制#include<stdio.h>
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
break;
printf("%d ",i);
i++;
}
return 0;
}
屏幕上只打印1~4
4.1.2continue举例
代码语言:javascript代码运行次数:0运行复制#include<stdio.h>
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
continue;
printf("%d ", i);
i++;
}
return 0;
}
屏幕上也打印1~4 原因是continue跳过了continue后的代码,直接又来到判断部分。由于5一直等于5,所以只打印1~4。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-03-17,如有侵权请联系 cloudcommunity@tencent 删除return变量实践语法int本文标签: C语言分支与循环(下)
版权声明:本文标题:C语言—分支与循环(下) 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1754686367a1705200.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论