为什么我跟小甲鱼输出的值不一样
#include<stdio.h>#include<math.h>
int main()
{
int i;
int n;
printf("请输入一个整数");
scanf("%d",&i);
n = pow(i, 5);
printf("%d的五次方是 : %d\n",i,n);
return 0;
}
#include <stdio.h>
#include <math.h>
int main()
{
int i;
double result;
printf("请输入一个整数:");
scanf("%d", &i);
result = pow(i, 5);
printf("%d的五次方是:%.2f\n", i, result);
return 0;
}
这是小甲鱼的
同样输入128,结果不一样{:10_266:}{:10_266:}{:10_266:} scanf("%lf", &i); 万千只cnm 发表于 2021-8-12 16:27
scanf("%lf", &i);
这是啥错误?
溢出了 scanf("%lf", &i);把值赋给i的指针地址,应该是scanf("%lf", i);吧,新人回答,不对请谅解 jhq999 发表于 2021-8-12 16:50
scanf("%lf", &i);把值赋给i的指针地址,应该是scanf("%lf", i);吧,新人回答,不对请谅解
scanf参数都是指针啊
所以要取i的地址
而且格式化输入要与变量对应
%lf对应double 万千只cnm 发表于 2021-8-12 19:48
scanf参数都是指针啊
所以要取i的地址
6楼说的对把int n 换成 __int64 n试试
页:
[1]