为什么答案在3以上的多一位答案就少一个1?哪里写错了?为什么pow哪里用错?
答案:2 悬赏:20 手机版
解决时间 2021-01-26 16:30
- 提问者网友:謫仙
- 2021-01-26 10:34
#include
#include
int main(void)
{
int a,n;
printf("Input a, n: ");
scanf("%d",&a);
scanf("%d",&n);
int h,b,c;
h=0;
b=1;
c=a;
do{
h=h+c;
c=a*pow(10,b)+c;
b++;
}while(b<=n);
printf("s=%d",h);
return 0;
}
最佳答案
- 五星知识达人网友:躲不过心动
- 2021-01-26 11:18
pow的参数时double或者float型,你传入的int型被转换为浮点型,少1可能和机器的浮点精度有关系。最好自己实现一个pow
全部回答
a%pow(10,i)
看函数的返回值以及函数的参数类型啊
%要求的是整形的参数,而pow必须是double的,所以不正确
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯