liang14 发表于 2022-5-25 20:13:23

新手不会,求大佬解题

一、分析以下程序段的循环四要素分别是哪些语句?

1、求成绩平均分

void main()

{

   int cj,s=0;

   floatpj;

   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:30:50

本帖最后由 傻眼貓咪 于 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 自增

    算法流程图:如下图
*/
页: [1]
查看完整版本: 新手不会,求大佬解题