很简单的C++小问题在线等

来源:百度知道 编辑:UC知道 时间:2024/06/19 01:11:55
#include<iostream>
using namespace std;
int main(){
int a=7,t=3;
double m=a/t
int m1=m;
}
这样的操作后m的值为多少,为什么?我觉得m的值仍为2.333333333但调试出来是2了(记得写上解释啊,不然我不设你为最佳答案)

因为A是整形 T也是整形
所以不管子M是什么类型
结果是整形的 M=2

int main你这里整个主函数的返回值都是整形的呀.

a 和 t 都是整数。整数运算的结果还是整数。也就是2.
在赋值给m的时候把2强制转换为浮点数,所以还是2了。
看下运算符的优先级就知道了。