13个回答
展开全部
1.程序输出结果是对的,但是,getch();这句给改一下,getchar();。
2.就对了啊,但是我不知道你加这个是说明意思,完全没有必要的啊。。可用不要这句就是的啊。。。程序就是对的了。输出结果也是对的。
3.为了验证,你可以把10改为4,一个小的数据,然后运算验证一下就可以了。
2.就对了啊,但是我不知道你加这个是说明意思,完全没有必要的啊。。可用不要这句就是的啊。。。程序就是对的了。输出结果也是对的。
3.为了验证,你可以把10改为4,一个小的数据,然后运算验证一下就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
/* 通过递归计算一个数的阶乘 */
int factorial(int num)
{
if (num==1)
return 1;
else
return (num * factorial(num - 1));
}
int main()
{
int i;
long sum = 0;
for (i = 1; i < 11; ++i)
sum += factorial(i);
printf("%ld\n",sum);
return 0;
}
/* 通过递归计算一个数的阶乘 */
int factorial(int num)
{
if (num==1)
return 1;
else
return (num * factorial(num - 1));
}
int main()
{
int i;
long sum = 0;
for (i = 1; i < 11; ++i)
sum += factorial(i);
printf("%ld\n",sum);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int fun(int n);
void main()
{
int i,n,sum=0;
printf("请输入n:");//输入数字,如10
scanf("%d",&n);
for (i=1;i<=n;i++)
{
sum+=fun(i);
}
printf("sum=%d\n",sum);
}
int fun(int n)//计算阶乘
{
if(n==1)
return 1;
return n*fun(n-1);
}
int fun(int n);
void main()
{
int i,n,sum=0;
printf("请输入n:");//输入数字,如10
scanf("%d",&n);
for (i=1;i<=n;i++)
{
sum+=fun(i);
}
printf("sum=%d\n",sum);
}
int fun(int n)//计算阶乘
{
if(n==1)
return 1;
return n*fun(n-1);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你试试把for后的两句放在for语句中
因为你的程序当c大于2时
d始终只能得一次值
而不会累加
而且你把应a
d定义为长整型
我自己写的中间的你试试
for(i=0;i<11;i
)
for(j=i;j>0;j
)
s*=j;
sum
=s;
其中s
sum都是长整型
用手机上回的
简单写了下
希望能看懂
还有你c能语言
因为你的程序当c大于2时
d始终只能得一次值
而不会累加
而且你把应a
d定义为长整型
我自己写的中间的你试试
for(i=0;i<11;i
)
for(j=i;j>0;j
)
s*=j;
sum
=s;
其中s
sum都是长整型
用手机上回的
简单写了下
希望能看懂
还有你c能语言
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询