鱼C论坛

 找回密码
 立即注册
查看: 1195|回复: 1

[已解决]新手不会,求大佬解题

[复制链接]
发表于 2022-5-25 20:13:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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: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 自增

    算法流程图:如下图
*/

算法流程图

算法流程图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 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 自增

    算法流程图:如下图
*/

算法流程图

算法流程图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-17 15:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表