
第4题的第2题 先*后/再%还是算不出正确答案
可以把具体过程写出来一下吗 答案是2.7
谢谢
在这里
括号()优先级是最高的,
其次是 乘除求模优先级一样的
再次是加
知道这些求值就容易了
x+a%3*(int)(x+y)%2/3
=x+a%3*(int)(2.7+4.8)%2/3
=x+8%3*7%2/3
=2.7+2*7%2/3
=2.7+14%2/3
=2.7+0/3
=2.7
不知道你这个问题是否已经解决, 如果还没有解决的话:
- 你可以看下这个问题的回答https://ask.csdn.net/questions/7661817
- 这篇博客你也可以参考下:浅谈算数操作符-%的使用
- 除此之外, 这篇博客: 程序设计与算法 | (3) 输入输出与运算符、表达式中的 格式控制符%x和%u 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
- %x: 以十六进制形式读入或输出整数
- %u: 以无符号整数形式输出整数
printf("%x,%d,%u",0xffffffff, 0xffffffff,0xffffffff);

int n;
scanf("%x",&n); //读入一个十六进制数
printf("%d",n); //输出对应的十进制数

- 您还可以看一下 山猫老师的第2版 软件项目管理实战课程中的 至少提升项目交付效率30%的方法揭秘小节, 巩固相关知识点
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^