|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
输入128,为什么结果显示0,明明声明的时候已经用到了long long int类型
- #include<stdio.h>
- #include<math.h>
- int main()
- {
- int i;
- long long int result;
-
- printf("请输入一个整数:");
- scanf("%d",&i);
-
- result = pow(i,5);
-
- printf("%d的五次方是:%d\n",i,result);
-
- return 0;
- }
复制代码
问题出在输出的格式化字符串上。你声明了result为long long int类型,但是在printf函数中使用了%d作为格式化字符串,这会导致结果以int类型输出。要修正这个问题,你需要修改格式化字符串,用%lld代替%d。
下面是修改后的代码:
- #include <stdio.h>
- #include <math.h>
- int main()
- {
- int i;
- long long int result;
-
- printf("请输入一个整数:");
- scanf("%d",&i);
-
- result = pow(i,5);
-
- printf("%d的五次方是:%lld\n",i,result);
-
- return 0;
- }
复制代码
现在,你应该可以正常输出结果了。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
|
|