l_0_0_w 2022-09-26 17:21 采纳率: 85.7%
浏览 27
已结题

关于C语言中的for语句

问题遇到的现象和发生背景

C语言
for语句

运行结果及报错内容

#include<stdio.h>
int main()
{
double sum_1 = 0,m=1;
int k, i;
for ( i= 1; i <= 20; i++)
{

    for (k = 1; k <= i; k++)
    {
        m *= k;

    }
    sum_1 += m;
}
printf("%lf", sum_1);
return 0;

}

_
"m=1"这个点。这个是错的,但把m弄到第一个for语句里面“double m=1;"的话就又对了。我感觉两个地方都一样啊!为什么啊?
_

我想要达到的结果

m在两个地方的逻辑分别是什么啊?

  • 写回答

3条回答 默认 最新

  • Java大魔王 2022-09-26 17:23
    关注

    放在循环里,每次循环m的值都会初始化为1
    放在外面,m的值就会一直累积

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月4日
  • 已采纳回答 9月26日
  • 修改了问题 9月26日
  • 创建了问题 9月26日

悬赏问题

  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 MATLAB中streamslice问题
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端