这道选择题有出的有问题吧? 给的条件不是变量结果a相同吗? 一个是6.6一个是6 也对吗?
来源:2-18 选择题
幕布斯213465
2018-04-24 14:34:20
float a = 6.6f;
cout<<(int)a<<endl;
return 0;
5回答
Arieslyu
2018-08-11
(int)a强制转换成int省略了.6
慕码人9028566
2018-08-06
float里是6.6,但是输出时进行了强制类型转换,所以结果显示为6.
imooc_澈
2018-08-06
您好,题目没有问题,要求选择输出结果相同的三项,
float a=6.6f; cout<<(int)a<<endl; 定义的是6.6,但输出时转换为了整形输出,因此输出结果为6.
int a=6.6;cout<<a<<endl; 定义的是整形,虽然给它赋值6.6,但它会跟它的数据类型保持一致,输出的是整型的6
int a=6.6;cout<<(double)a<<endl; 同理,定义的是整型,那它的值就会自动转化为整型6,将6以double类型输出,它的值还是6.
如果解决了你的问题,请采纳,祝学习愉快~
慕设计7201578
2018-08-04
float a = 6.6f; cout << (int)a << endl; //输出结果为6,强制转换为int类型了;
int b = 6.6; cout << b << endl; //输出结果为6,b的类型为int,小数点后的就不算了;
int c = 6.6; cout << (double)c << endl; //同上
Tender10
2018-04-24
注意看一下输出语句哦,在输出变量a的值的时候,其实是进行了一个强制转换,转换成了int类型,所以最终输出的变量a的值还是6。
相似问题