当前位置:系统粉 > 电脑问答 > 其他问答 > 百度上看到一道C语言题,有点问题

百度上看到一道C语言题,有点问题

提问者:uuservice  |  浏览 次  |  提问时间:2017-03-26  |  回答数量:5

百度上看到一道C语言题,有点问题两个数n,m~求n到n-m+1的乘积~ 我的做法是:(貌似没什么问题) #include <stdio.h> main() {int m,n,i,s=1; scanf("%d",&m); scanf("%d",&n); for(i=0;i<m;i++) {s*=n;n--;} printf("%d \n",s); } 如果想用递归的做法来做:(很有问题,求助) #include<stdio.h> int f(int n) {int m,t; scanf("%d",&m); if(n==m) return 1; else {t=n*f(n-1);return t;} } main() {int n,s; scanf("%d",&n); s=n*f(n-1); printf("%d\n",s); } 另外题目是用迭代?请问怎么用?

已有5条答案
吃鸡蛋了吗

吃鸡蛋了吗

回答数:11  |  被采纳数:55

2017-03-26 03:03:04
有什么问题
赞 1
温暖的现在_

温暖的现在_

回答数:147  |  被采纳数:141

2017-03-26 06:27:40

递归法做的那个有点不对
赞 14
77885210909

77885210909

回答数:31  |  被采纳数:119

2017-03-26 02:04:04
你的做法就是迭代法
赞 3
魔鬼猖獗者

魔鬼猖獗者

回答数:153  |  被采纳数:46

2017-03-26 07:39:28

#include<stdio.h>
int m;
int n2;
int f(int n)
{
int t;
if(n==n2) return n2;
else
{
t=n*f(n-1);
return t;
}
}
main()
{
int n,s;
scanf("%d %d",&m,&n);
n2=n-m+1;
s=f(n);
printf("%d\n",s);
}
赞 15
▲我系男森

▲我系男森

回答数:141  |  被采纳数:135

2017-03-26 03:24:01

恩对对 万分感谢哈~
赞 14
解决方法
版权信息

Copyright @ 2011 系统粉 版权声明 最新发布内容 网站导航