|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
一、分析以下程序段的循环四要素分别是哪些语句?
1、求成绩平均分
void main()
{
int cj,s=0;
float pj;
int i=1;
printf("请输入成绩:");
while(i<=3)
{
scanf("%d",&cj);
s+=cj;
i++;
}
cj=s/3.0;
printf("平均成绩是:%.1f\n",cj);
}
(1)循环初始化:
(2)循环条件:
(3)循环语句:
(4)更新循环变量:
2、求1+2+3+…+100的和
#include <stdio.h>
main()
{
int s=0,i=1;
while(i<=100)
{
s=s+i;
i++;
}
printf("%d",s);
}
(1)循环初始化:
(2)循环条件:
(3)循环语句:
(4)更新循环变量:
3、超市收费
#include <stdio.h>
main()
{
double s=0,x;
printf("商品价格(结束请按0):");
scanf("%lf",&x);
while(x!=0)
{
s+=x;
printf("请继续输入商品价格(结束请按0):\n");
scanf("%lf",&x);
}
printf("购买商品总价为%.2f元",s);
}
(1)循环初始化:
(2)循环条件:
(3)循环语句:
(4)更新循环变量:
二、求Sn=a+aa+aaa+…+aa…a(n个a)的值,其中,a是一个数字。如n=4,a=3时,求3+33+333+3333的值.
如何用循环实现以上程序。分析循环结构中的循环初始化、循环条件、循环体、循环变量增值四要素。并根据循环四要素写算法流程图或者伪指令
(1)循环初始化:
(2)循环条件:
(3)循环语句:
(4)更新循环变量:
(5)算法流程图或者伪指令:
本帖最后由 傻眼貓咪 于 2022-5-25 21:32 编辑
1、求成绩平均分
- #include <stdio.h>
- int main() // <--------- 注意这里 int main()
- {
- int cj, s = 0;
- float pj;
- int i = 1; //(1)循环初始化 i = 1
- printf("请输入成绩:");
- while (i <= 3) //(2)循环条件 i <= 3,(3)循环语句 while(...){...}
- {
- scanf("%d", &cj);
- s += cj;
- i++; // (4)更新循环变量 i++
- }
- cj = s / 3.0;
- printf("平均成绩是:%.1f\n", cj);
- }
复制代码
2、求1 + 2 + 3 + … + 100的和
- #include <stdio.h>
- int main() // <--------- 注意这里 int main()
- {
- int s = 0, i = 1; //(1)循环初始化 i = 1
- while (i <= 100) //(2)循环条件 i <= 100,(3)循环语句 while(...){...}
- {
- s = s + i;
- i++; //(4)更新循环变量 i++
- }
- printf("%d", s);
- }
复制代码
3、超市收费
- #include <stdio.h>
- int main() // <--------- 注意这里 int main()
- {
- double s = 0, x;
- printf("商品价格(结束请按0):");
- scanf("%lf", &x); //(1)循环初始化 x = ??
- while (x != 0) //(2)循环条件 x != 0,(3)循环语句 while(...){...}
- {
- s += x;
- printf("请继续输入商品价格(结束请按0):\n");
- scanf("%lf", &x); // (4)更新循环变量 x
- }
- printf("购买商品总价为%.2f元", s);
- }
复制代码
二、求Sn = a + aa + aaa + … + aa…a(n个a)的值,其中,a是一个数字。如n = 4,a = 3时,求3 + 33 + 333 + 3333的值.
如何用循环实现以上程序。分析循环结构中的循环初始化、循环条件、循环体、循环变量增值四要素。并根据循环四要素写算法流程图或者伪指令
- #include <stdio.h>
- #include <math.h>
- int main() {
- int n, a, sum = 0, i = 1;
- scanf("%d%d", &n, &a); //(1)循环初始化 n = ??
- while (n) // (2)循环条件 n != 0,(3)循环语句 while(...){...}
- {
- n--; // (4)更新循环变量 n /= 10
- sum += (a * pow(10, n) * i);
- i++;
- }
- printf("%d", sum);
- return 0;
- }
- //(5)算法流程图或者伪指令
- /*
- 伪指令:
- sum = 0
- i = 1
- 输入 n 和 a 值
- 当 n 不为 0 时,重复循环。每次循环:
- n 自减
- sum 累加 a * 10^n * i 结果
- i 自增
- 算法流程图:如下图
- */
复制代码
算法流程图
|
|