一、循环语句do while的用法

分析代码:
创建变量i
do内放语句项
while(表达式),表达式为真则进入循环
此代码的结果为打印1-10这10个数字
源代码:
#include<stdio.h>
int main()
{
int i = 1;
do
{
printf("%d ", i);
i++;
} while (i <= 10);
return 0;
}二、do while语句中的break
break:跳出循环

分析代码:
这段代码与第一段大约一致
在do内的第一条语句为if(i==5),即当i=5时跳出循环
此代码的结果为:1 2 3 4(5来不及打印)
源代码:
int main()
{
int i = 1;
do
{
if (i == 5)
break;
printf("%d ", i);
i++;
} while (i <= 10);
return 0;
}三、do while语句中的continue
continue:跳过continue后的语句,重新开始新循环

分析代码:
这段代码与第一段大约一致
在do内的第一条语句为if(i==5),然后跳过continue后的语句(打印和++),重新开始循环(i=6)
此代码的结果为:1 2 3 4 6 7 8 9 10(跳过5)
源代码:
int main()
{
int i = 1;
do
{
if (i == 5)
continue;
printf("%d ", i);
i++;
} while (i <= 10);
return 0;
}关于循环语句的小练习(一)
1.运用循环语句计算n的阶乘

思路:
n的阶乘,及从1乘到n
所以应该想到至少创建两个及两个以上的变量,其中一个用于存储scanf函数取得键盘上的数,另一个变量从1开始循环逐渐逼近目标数
分析代码:
创建变量i,a,以及sum赋值为1
scanf函数将输入的数存入变量i中
for循环,初始化:a=1;判断:a<=i;调整:a++
语句项为sum=sum*a
打印sum
例如i=3:进入for循环,a=1,sum=1;a=2,sum=1*2;a=3(i),sum=1*2*3
源代码:
int main()
{
int i = 0;
int a = 0;
int sum = 1;
scanf("%d", &i);
for (a = 1; a <= i; a++)
{
sum = sum * a;
}
printf("%d", sum);
return 0;
}2.计算1!+2!+3!+...+10!

思考:
这是在上一个求阶乘的基础上增加了每个阶乘的求和
所以将scanf函数改为for循环即可
分析代码:
创建变量n,a,以及ret赋值1,sum赋值0
for循环:初始化:n=1;判断n<=10;调整n++。这一步是循环出1-10这10个数字
在嵌套for循环:初始化:a=1;判断a<=n;调整a++。这一步是求阶乘的过程
sum+=ret为将每个阶乘求和,最后打印sum
注意:在第二个for循环前要将ret初始化
源代码:
int main()
{
int n = 0;
int a = 0;
int ret = 1;
int sum = 0;
for (n = 1; n <= 10; n++)
{
ret = 1;
for (a = 1; a <= n; a++)
{
ret = ret * a;
}
sum += ret;
}
printf("%d", sum);
return 0;
}以上的代码可能有些繁琐,简易版如下

分析代码:
只需要创建3个变量即可
第一个for魂环不变,取消第二个for循环,直接用第二个foe循环的语句即可
但是,ret=ret*n
思路:n=1时,ret为1的阶乘,n=2时,ret为1的阶乘*2,即2的阶乘,以此类推
源代码:
int main()
{
int n = 0;
int ret = 1;
int sum = 0;
for (n = 1; n <= 10; n++)
{
ret *= n;
sum += ret;
}
printf("%d", sum);
return 0;
}总结
以上就是本人对于循环语句do while以及循环语句的练习(一)的学习与理解
C语言中的do-while循环与break/continue实践
本文详细介绍了C语言中的do-while循环结构,包括其基本用法、使用break跳出循环和continue跳过循环中部分语句的情况。此外,还提供了计算阶乘和序列求和的代码示例,展示了循环在计算过程中的应用。
9669

被折叠的 条评论
为什么被折叠?



