永发信息网

c++: #include<stdio.h> main() { int n,s=1,x=0;

答案:1  悬赏:60  手机版
解决时间 2021-03-31 10:40
  • 提问者网友:轮囘Li巡影
  • 2021-03-31 07:48
c++: #include<stdio.h> main() { int n,s=1,x=0;
最佳答案
  • 五星知识达人网友:十鸦
  • 2021-03-31 08:18
#include
main()
{
int n,s=1,x=0;
for(n=1;n<=10;n++)
{

if(n%2==0)
{
s=1;m=n;
while(m)
{
s=s*m;
m--;
}
x=x+s;
}
}
printf("%d",x);
}追问也不行。前面已经有了。追答少写了个定义,在定义行里加m int n,m,s=1,x=0;

你说“前面已经有了”什么意思?

如果还有错,你最好描述一下错误追问为什么要加m呢,我又没用到m.这程序没语法错误。追答假设n是2,但你在算阶乘时又n--,最后把它改成0了。下一个数n又会是2,所以程序死循环,算阶乘时用m抄后可以m--追问有for在.n会从1至10的。那按你的方法,怎样改呢追答我给你的就是改完的。只不过少写了m定义
你把
int n,s=1,x=0;
改成
int n,m,s=1,x=0;

如果有问题再把现象告诉我。

“有for在.n会从1至10的”什么意思?

for(n=2; n<11; n+=2)
n=0;
这上面的n能到10吗?追问n<=10,你说呢追答真服了你了。
我说是这样:
for(n=2; n<11; n+=2)
n=0;
这两句构成一个死循环,n在2,0,2,0,2,0。。。每次for将n变成2,然后n=0;把n变成0
轮到你说了,是不是这样?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯