0.展示PTA总分(0----2)
截图展示2次题目集:单循环和嵌套循环题目集,排名分数截图。
1.本章学习总结(2分)
1.1 学习内容总结
整理这两周学习主要知识点,并能对每个知识点介绍简单案例或语法文章地址https://www.yii666.com/article/758381.html网址:yii666.com文章来源地址:https://www.yii666.com/article/758381.html
1.嵌套循环
顾名思义,就是循环之中套有循环,从而达到多次重复运算,获得结果的目的。
//判断N位数中所有水仙花数
#include <stdio.h>
#include <math.h>
int main()
{
double N; //输入要求的几位数;
int a; //N位数的下界;
int t; //临时变量,储存;
int i = 0; //循环数;
int s = 0; //各位数立方的和;
scanf("%lf", &N);
a = pow(10, N - 1); //计算立方;
t = a;
while (N >= 3 && N <= 7) //主循环;判断输入位数范围;
{
while (pow(10, N - 1) <= a && pow(10, N) >= a ) //子循环;判断范围之间的数是否符合;
{
t = a;
while (i < N) //孙子循环;计算位数立方和;
{
s = s + pow(t % 10, N);
t /= 10;
i++;
}
i = 0;
if (a == s)
{
printf("%d\n", a);
}
a++;
s = 0;
}
break;
}
return 0;
}
同样的,for循环,do_while循环也是相同的。
- (1)这里要注意两个语句,break语句和continue语句区别。
- break语句跳出的是整个循环,它不仅可以在循环语句中使用,同样的,switch语句中仍然可用它跳出。它会使整个语句结束。
- continue语句跳出的是本次循环,即遇见它本循环语句结束,但是它不能出现在switch语句中。
- (2)循环条件
- 在做题过程中可故意制造一些死循环,如while(1)循环体语句中用一个if语句判断条件是否成立,再用break跳出,节省了循环条件的控制。
- 同样的,for(;