目的求的是2*4*6*8*……*100的乘积,#include <stdio.h> int main() { int n=1,chengji=1,a=2; while(n<=50) { n=n+1; chengji=chengji*a; a=a+2; } printf("计算结果是%d\n",chengji); return 0; } 为什么输出结果不对
时间: 2024-03-07 20:48:37 浏览: 50
c代码-求2*4*6*...*100
非常抱歉,我理解错误了你的问题。这段代码的目的是计算 2*4*6*...*100 的结果。如果你运行代码,你会发现结果是 0,这是因为在第一次循环中,`chengji` 的初始值为 1,而 `a` 的初始值为 2,因此第一次循环时 `chengji` 的值将会变成 1*2=2,而不是期望的 2*4=8。因此,你需要将 `chengji` 的初始值改为 2,如下所示:
```
#include <stdio.h>
int main() {
int n=1, chengji=2, a=4;
while(n<=49) {
n = n + 1;
chengji = chengji * a;
a = a + 2;
}
printf("计算结果是%d\n", chengji);
return 0;
}
```
这样修改后,输出结果将会是计算出的 2*4*6*...*100 的积。
阅读全文