大佬求帮

[复制链接]
查看11 | 回复4 | 2021-1-27 07:17:17 | 显示全部楼层 |阅读模式
以下程序的运行结果是__52.00_____。
#include
voidmain()
{inti=5,j=9;
floatx=2.3,y=45;
printf(“%8.2f\n”,i%(int)(x+y)*j/2/3+y);
}
这个程序能运行吗?题目来自百度文库,又怎么算
分 -->
回复

使用道具 举报

千问 | 2021-1-27 07:17:17 | 显示全部楼层
引用楼主qq_45673225的回复:以下程序的运行结果是__52.00_____。
#include
voidmain()
{inti=5,j=9;
floatx=2.3,y=45;
printf(“%8.2f\n”,i%(int)(x+y)*j/2/3+y);
}
这个程序能运行吗?题目来自百度文库,又怎么算

哦哦,符号打错了,但是还是不知道如何算,不应该是52.5吗?
回复

使用道具 举报

千问 | 2021-1-27 07:17:17 | 显示全部楼层
那为什么是52.00,不是52.50呢?还有小数点的问题
回复

使用道具 举报

千问 | 2021-1-27 07:17:17 | 显示全部楼层
引用3楼qq_45673225的回复:那为什么是52.00,不是52.50呢?还有小数点的问题
整数和整数相除结果为整数
回复

使用道具 举报

千问 | 2021-1-27 07:17:17 | 显示全部楼层
这是在考查运算符的优先级吧
()优先级最高,
其次%*/,这些是从左往右
然后再是+
所以这个式子
其实就是
((((i%((int)(x+y))*j)/2)/3)+y
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行