编写程序n个x相乘,不许调用pow( )函数

2025-01-04 23:40:25
推荐回答(3个)
回答1:

楼上的两个程序,显然没考虑溢出的情况,对稍微大些的n和x结果都是错的。
如果n和x都是正整数的话,当x是2的若干次方时,直接通过移位运算就能得到结果。其它情况,你可以网上找找大整数乘法的高效算法来进行处理。

回答2:

#include

void main()
{
int n,x,i;
long m=1;

scanf("%d%d",&n,&x);

for(i=0;i m*=x;

printf("%ld\n",m);
}

回答3:

int m=1;
for(i=1;i<=n;i++)
m=m*x;