c语言求阶乘,用了c语言调用函数阶乘哪里错了,正确的写一下,谢谢

C语言调用函数求阶乘的和
哪里错了????_百度知道
C语言调用函数求阶乘的和
哪里错了????
n& }int jc(int n)
/&E&׳*&#47,j=1;&E for(i=1;i+2) sum=sum+jc(i); for (i=1,sum=0;&Eó½&ordm#include&lt,sum);=n;&&I׳*/ getch();i&i&*&C;int jc(int n);*½{i++) j=j*i; printf(&&void main(){&O&=9.h&%d\
后面的乱码一不小心搞上去的,无关紧要
提问者采纳
{*注意这里*/n& getch();=9;
/=n;i&*注意这里*/=9;#include &lt,修改如下:#include&long int jc(int n);: for (i=1;i+=2) /
long int j=1;i& for(i=1,sum);void main(){ printf(& long int sum=0;*注意这里*/*注意这里*&#47,从而使程序陷入死循环不过数据类型也应该用 for (i=1;i& sum=sum+jc(i); }long int jc(int n)
/i++) j=j*i;
/i+2)其中的i+2不能改变i值.h&%d\stdio关键错误是;*注意这里*&#47.h&gt
提问者评价
其他类似问题
为您推荐:
其他1条回答
改成for (i=1;i&i&=9;=9;i+2)第三个i+2有问题for (i=1
阶乘的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁求高手解决一道c语言题目{编写一递归函数fac用来求阶乘t!。主函数调用该函数,求20!}急!!!。_百度知道
求高手解决一道c语言题目{编写一递归函数fac用来求阶乘t!。主函数调用该函数,求20!}急!!!。
我有更好的答案
&n); scanf(&;#include&/n&%d;因为20.h&gt,n.0lf\; }int main(){
&#47!已经超出了int的最大值; printf(&quot,输出的时候输出整数位 return 0;double fac(int n){
if(n==1)return 1;stdio,fac(n));%d&quot,故用double型.h&gt#include&
else return fac(n-1)*n!=%
#include &stdio.h&#include &conio.h&main(){float f(int);/* 函数原型 */int n = 20;
printf(&Input a number:&);//scanf(&%d&,&n); sum=f(n); printf(&%d!=%.2f\n&,n,sum);getch(); } float f(int n) {
if(n&0) printf(&data error.\n&); else if(n==0||n==1) sum=1;/* 加n==0是因为0也可以求阶乘,在调用函数时可以给实参n赋值为0 */else sum=f(n-1)*n;
#include &stdio.h&/*这是求解函数,返回一个数的阶乘*/long fac(long i){
return i*fac(i-1);}void main(){
scanf(&%ld&,&num); /*由用户控制输入*/
printf(&fac(%ld):%ld\n&,num,fac(num));}
其他类似问题
为您推荐:
递归函数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁用调用函数求1 2 3 4 5的阶乘,哪里错了,写详细点谢谢了_百度知道
用调用函数求1 2 3 4 5的阶乘,哪里错了,写详细点谢谢了
jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http.jpg" esrc="http://d.com/zhidao/pic/item/838ba61ea8d3fd1f627c1edd374e251f94ca5fdb.baidu.hiphotos&nbsp.baidu://d.com/zhidao/wh%3D600%2C800/sign=8747c22cfcedabc70683fb/838ba61ea8d3fd1f627c1edd374e251f94ca5fdb./zhidao/wh%3D450%2C600/sign=5bb87ee1a8cd8e2ddef49b73/838ba61ea8d3fd1f627c1edd374e251f94ca5<a href="http://d.hiphotos
误多多啊int fac(int x){int a=1..{printf(&:;i++)
a*=i;=a,i.;%d&#92;n&quot,fac(i)); for(i=2;i&lt.;}第8行; return a
你写的不对
nt fac(int x){int a=1,i; for(i=2;i&=x;i++)
a*=i;}第8行:....{printf(&%d&#92;n&,fac(i)); }
来自团队:
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁C语言求阶乘程序,不知道哪里错了。请各位帮我指点一下,谢谢!可以运行,但是结果是一个负数。_百度知道
C语言求阶乘程序,不知道哪里错了。请各位帮我指点一下,谢谢!可以运行,但是结果是一个负数。
#include &quot.h& } printf(&stdafx.h& i++;#include &int main(n&quot,sum=sum+sum1;=20) {sum1=sum1*i,sum=0;sum=%d&#92,i; while(i&lt,sum), char* argv[]){ int sum1=1
是1到20阶乘的和。
提问者采纳
sum),i=1, char* argv[]){
int sum=1;=20)
sum*=i;n&sum=%d&#92;
while(i&lt阶乘就是 1*2*3*4……*20int main(
其他类似问题
为您推荐:
其他3条回答
溢出了20的阶乘是一个很大很大的数,用浮点型吧,你定义一个int型变量是不够的
sum1=sum1*i;sum=sum+sum1;
超int表示范围,还有记得把i赋值1;
阶乘的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁c语言求阶乘函数_百度知道
c语言求阶乘函数
我用的是VC++6.0在这个环境下,怎么来求20的阶乘?发现用int来返回函数值,最多能到12吧就不对了,就是说15或者16都不对,我就是想求一下20的阶乘,看看怎么来求,就算是用unsigned int也不对畅常扳端殖得帮全爆户……只有用double吗?求大神解惑!VC中貌似没有long long int吧?
提问者采纳
你好,C语言中默认的只有long int short的整数类型,如果数过大最好使用double, 或则使用第畅常扳端殖得帮全爆户三方大整数运算(可以去网上百度下代码),请注意数据如果太大最好用double 希望能帮到你!望采纳!
用unsigned int不可以吗?
unsigned int 是Int 的两倍,但20的阶乘太大,还是放不下,最好是用double 这是C语言中能存的数最大的了!
提问者评价
其他类似问题
为您推荐:
其他1条回答
的确是因为数据溢出的原因。un畅常扳端殖得帮全爆户signed int 是正整数,范围比int扩大了2倍,不够。所以根据结果确定所使用的数据类型,求20的阶乘使用float型即可。
阶乘的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 n的阶乘c语言程序设计 的文章

 

随机推荐