サンセット
2021-10-11 16:15
采纳率: 94.1%
浏览 75

C语言入门题,来个大lao看看

img

  • 好问题 提建议
  • 收藏

3条回答 默认 最新

  • 樱空之雪700 2021-10-11 16:43
    已采纳

    #include <stdio.h>
    #include <math.h>
    int main()
    {
    int i,n;
    double t,sum=0;
    printf("请输入正整数n:");
    scanf("%d",&n);

    for(i=1;i<=n;i++)
    {
        t += sqrt(i);
        sum += t;    
    }
        
    printf("sum=%lf\n",sum); 
    return 0;
    

    }

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 
    #include <stdio.h>
    #include <math.h>
    int main()
    {
       double sum=0;
       int n;
       printf("请输入正整数 n:");
       scanf("%d",&n);
       for(int i=1;i<=n;i++)
       {
           for(int j=1;j<=i;j++)
           {
                sum=sum+sqrt(j); 
            } 
       }
       printf("sum=%f",sum);
       return 0;
    }
    

    小唐来讲思路了!
    就是我们先来观察,他每一项都相当于一个累计
    第一项,我们要加1个数
    第二项,我们要加2个数...
    所以很明显,我们除了外面一个循环外,还需要一个内循环,而且他的数值是会变动的
    所以我们选用双重for循环,还有一个就是,我一开始看题目的时候,有一个double的t和sum
    一开始以为是要计算里面的t,然后再在外面那个for里面实现sum的相加
    后来想了想,直接这样写就可以啦
    这个是结果:

    img

    评论
    解决 2 无用
    打赏 举报
  • Fjiaer 2021-10-11 16:16

    题目不难,建议自己思考

    评论
    解决 1 无用
    打赏 举报

相关推荐 更多相似问题