#include
unsigned long long fact(int n);
int main(void)
{
int num;
printf(" 本机: ULLONG_MAX = %llu\n",ULLONG_MAX);
printf(" 请输入一个不大于20的正整数: ");
while(scanf("%d",&num) == 1)
{
if(num<0)
printf(" 不能为负数!\n");
else if(num>20)
printf(" 数据不能大于20!\n");
else
{
printf(" 计算 %2d! 的结果: %llu\n",num,fact(num));
printf("\n");
}
printf(" 请输入一个不大于20的正姿拆皮整数: ");
}
printf("\n 再见!\n"御盯);
return 0;
}
unsigned long long fact(int n)
{
unsigned long long ans;
for(ans=1;n>1;n--)
ans *=n;
return ans;
}
注意:printf(" 本机: ULLONG_MAX = %llu\n",ULLONG_MAX);
是检测本机可以迹差容纳的最大无符号整数,所以n的阶乘不能超过此数值。
编译器必须满足c99规范。
#include <卖猛stdio.h>
float mi(float x,int n)
{int i;
float add=1;
for (i=1;i<=n;i++)
add*=x;
return add;
}
void main()
{int x,n,m;
scanf("%d %d",&x,&n);
m=mi(x,n);
printf("清拿%d",m);
}
其中X是需要计算的数,中正桥n为幂次
main()
{ int n,i,x;
printf(\"please enter a number:\\n\");
scanf(\"%d\",&n);
for(i=1;i
printf(\"%d!=%d\轿樱\唯盯n\",n,x);
} 我用的操作系统是 WIN2000 编译系统 TURBOC:2.0
本人只指帆和考虑 正确 其他都没顾虑
main()
{
int i,j,k=1;
scanf("%d",&i);
for(j=1;j<=i;j++)
k=k*j;
printf("%d",k);
}
我想这个可以了凯逗,你让此试盯滑卖试吧!
main()
{int i,n,sum=1;
scanf("森态%d",&n);
for(i=1;i<=n;i++)
sum=sum*i;
printf("%d"此亩源耐棚,sum);
}