这个题哪里出错了,请求指点

img

-

img

供参考:

#include<stdio.h>
#include<math.h>
int main()
{
    int a, b, c;
    scanf("%d %d %d", &a, &b, &c);

    printf("%-9d%-9d%-9d\n", a, a * a, a * a * a);
    printf("%-9d%-9d%-9d\n", b, b * b, b * b * b);
    printf("%-9d%-9d%-9d\n", c, c * c, c * c * c);
    return 0;
}

类型错了,pow函数的参数应该为double型,不是int类型

printf里的%d都改成%f

回答:情况确实如此,不换成printf("%f"),是输出不了,类型不强制要求,代码如下(用DevC++编写)

#include<stdio.h>
#include<math.h>

int main()
{
    int a,b,c;
    printf("请输入三个整数,计算后会输出它们的一次方、二次方、和三次方\n");
    scanf("%d %d %d",&a,&b,&c);    
    printf("计算结果为:\n");
    printf("%f,%f,%f\n",pow(a,1),pow(a,2),pow(a,3));
    printf("%f,%f,%f\n",pow(b,1),pow(b,2),pow(b,3));
    printf("%f,%f,%f\n",pow(c,1),pow(c,2),pow(c,3));
    return 0;
}