表达式:(int)((double)9/2)-(9)%2的值
计算机二级c语言的一道题,我知道答案是3,我想问:
1. (double)9/2是((double)9)/2还是(double)(9/2)??是先把9转化为double类型还是把9/2转化为double类型??
2.为什么(9)%2的9要加括号?不加括号行吗?
谢谢!!
表达式:(int)((double)9/2)-(9)%2的值是3。
1、这个表达式首先从左往右计算,首先9/2=4
2、(double)4=4.0,(double)4意思是将int类型的4强制转换为double型
3、(int)4.0=4,(int)4.0又将double型的4.0强制转换为了int,即减号前结果为4;
4、(9)%2=9%2=1,所以结果为4-1=3.
扩展资料:
强制类型转换
1. 条件是转换的数据类型必须是兼容的。
2. 格式:(type)value,type是要强制类型转换后的数据类型
3. 整数的默认类型是 int。
参考资料:百度百科-算数运算符
(int)((double)9/2)-(9)%2=4
分析:(double)9/2=4.5
(int)(double)9/2=5
(9)%2=1
5-1=4
拓展资料:
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。
拓展链接:百科
表达式(int)((double)9/2)-(9)%2的值是3。
这个表达式的计算过程为:首先求出9除以2的商等于4,再把其强制转化为实型数据为4.0,然后再强制转化为整型数据4,最后减去9对2求余得到的数1,最终结果等于3。
拓展资料:
当操作数的类型不同,而且不属于基本数据类型时,经常需要将操作数转化为所需要的类型,这个过程即为强制类型转换。强制类型转换具有两种形式:显式强制转换和隐式强制类型转换。