qq850336121 发表于 2019-12-11 15:02:53

作业S1E7, double 和long double结果为什么不一样


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

int main()
{
      int i;
      long double result;

      printf("请输入一个整数:");
      scanf("%d", &i);

      result = pow(i, 5);

      printf("%d的五次方是:%.2f\n", i, result);

      return 0;
}

运行结果是
0

请问这是什么问题?

最后的魁拔 发表于 2019-12-11 15:55:03

double是lf,
long double不清楚,你可以试一下llf

Croper 发表于 2019-12-11 22:37:59

long double使用“%Lf”注意L是大写。

值得注意的是Dev-C因为其使用的编译器和运行库不兼容,所以无法有效地支持long double的输入与输出,
如果使用dev-C,建议将其转化为double再进行输入输出

LYF39 发表于 2021-12-21 15:06:34

Croper 发表于 2019-12-11 22:37
long double使用“%Lf”注意L是大写。

值得注意的是Dev-C因为其使用的编译器和运行库不兼容,所以无法有 ...

DEV-C是不是以后都无法使用long double了么
页: [1]
查看完整版本: 作业S1E7, double 和long double结果为什么不一样