问题标题: 酷町堂1376a的b次方为什么错了

-1
0
已解决
吴知玄
吴知玄
新手光能
新手光能
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{
    double a;
    int b;
    cin>>a>>b;
    a=pow(a,b);
    a=int(a*100+0.5)/100.0;
    printf("%.1f",a);
    return 0;
}

1
已采纳
何文轩
何文轩
高级守护
高级守护

你四舍五入的时候应该是*10   /10.0;

0
0
栾峻岩
栾峻岩
初级天翼
初级天翼
a=pow(a,b);
    a=int(a*100+0.5)/100.0;
    printf("%.1f",a);
    return 0;

这里有问题,把这里的a换为c1(double类型,别忘了定义!)

 

int b;

改成:

double b;

就对了。

 

 

 

 

核心代码:

 double a,b,c,c1;
    cin>>a>>b;
    c=pow(a,b);
    c1=(int)(c*10+0.5)/10.0;
    printf("%.1f",c1);

0
0
我要回答