用c语言编写一个程序计算n!,要求:定义一个带参数的宏,计算n!,并在主函数中使用这个宏。
3个回答
展开全部
#define FACT(n,res)\
do {\
res = 1;\
for ( unsigned long i = 1UL; i <= n; i++ ) res *= i;\
}while(0)
调用
unsigned long result;
FACT(10,result);
输出result即可
do {\
res = 1;\
for ( unsigned long i = 1UL; i <= n; i++ ) res *= i;\
}while(0)
调用
unsigned long result;
FACT(10,result);
输出result即可
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
unsigned long long q(unsigned long temp){
if(temp==1)return 1;
return q(temp-1)*temp;}
main(){
unsigned long a;
scanf("%d",&a);
printf("%d",q(a));
}
unsigned long long q(unsigned long temp){
if(temp==1)return 1;
return q(temp-1)*temp;}
main(){
unsigned long a;
scanf("%d",&a);
printf("%d",q(a));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果要用宏来实现阶乘运算的话,要用到宏嵌套和递归,有十分详细的文档。
参考资料: http://hi.baidu.com/_%E2d_%B7%B3_%DE%B2%C2%D2/blog/item/a7f7a31948bbe070dbb4bd31.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询