当前位置: 代码迷 >> C语言 >> 关于求X的阶层和
  详细解决方案

关于求X的阶层和

热度:598   发布时间:2007-05-24 21:03:01.0
关于求X的阶层和

我这样为什么错了?
错在哪里了?
#include<stdio.h>
double add(double);


void main()
{
int x;
printf("请输入1个数:");
scanf("%d",&x);
add(x);
printf("%d",x);
}
double add(double i)
{
double a;
int j=1;
for(;j<=i;j++)
{
a=i*j;
}

}

搜索更多相关的解决方案: 阶层  

----------------解决方案--------------------------------------------------------
定义输入的数字为整形
传递给函数的又是双精度
----------------解决方案--------------------------------------------------------

a=i*j;改成a+=i*j看看,我新手,不过你这样好象一直都是把I*J得赋值给A,前面并没有相加?

如果错误,高手包涵。


----------------解决方案--------------------------------------------------------
按照2楼说的 我把定义的整型换成double的 也不行啊..
按照3楼说的 也不行
----------------解决方案--------------------------------------------------------
我这个程序输出的结果是

控制台输入几 最后输出就是几
----------------解决方案--------------------------------------------------------
以下是引用chensiyu04在2007-5-24 21:03:01的发言:

我这样为什么错了?
错在哪里了?
#include<stdio.h>
double add(double);


void main()
{
int x;
printf("请输入1个数:");
scanf("%d",&x);
add(x);
printf("%d",x);
}
double add(double i)
{
double a;
int j=1;
for(;j<=i;j++)
{
a=i*j;
}

}


现在再看下,肯定是输入几就是几,因为你后面的语句就算执行也没有输出控制符,你不妨把x==给i试下,我也不是很懂,把x赋值给i应该可以吧?错了包涵下!


----------------解决方案--------------------------------------------------------
   或者后面加句printf("%i\n",a);没有输出控制符就算执行也是输出上面X的值!
----------------解决方案--------------------------------------------------------

#include<stdio.h>
long add(int);


void main()
{
int x;
long s;
printf("input x:");
scanf("%d",&x);
s=add(x);
printf("%ld",s);
}
long add(int i)
{

return i==0?1:add(i-1)*i;

}


----------------解决方案--------------------------------------------------------
6楼的
我这是调用函数```main()里面的 x
就是 add里的i

7楼的 printf("%i\n",a)
%i 是什么?
----------------解决方案--------------------------------------------------------

能不能麻烦8楼的解释一下
return i==0?1:add(i-1)*i;
这一步

我输入2 2的乘阶应该是 2*1+2*2=5
为什么我输入2 他的出的结果是2呢?
我用你的代码做的``


----------------解决方案--------------------------------------------------------
  相关解决方案