A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 夜空守望者 中级黑马   /  2015-3-13 15:32  /  1280 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int 1/3=0?
int 1/3=1?
还有
int  10/3=?
double  10/3=?

9 个回复

正序浏览
0 0 3 3.333333
回复 使用道具 举报
wzboy 来自手机 中级黑马 2015-3-14 04:12:11
9#
这个时间点还有在学习的?也真是蛮拼的。
回复 使用道具 举报
又学到了一点知识。好贴+好回复
回复 使用道具 举报
可以采用printf()检验结果。
运算符+ -高于赋值,所以先运算后赋值。
知识点:当两个整数相除时,它的结果依旧是整数。所以1/3=0,10/=3。
double类型为6位小数,所以运算完再赋值double b =10/3 的值是 3.00000。
C语言基础视频中三种算数运算细节(自动类型提升,自动类型转换,强制类型转换),可以看一下。

回复 使用道具 举报
在计算算术表达式的结果时,需要注意计算过程中运算对象的数据类型转换。
相同数据类型的数据、变量进行运算,结果保持原有数据类型。
当不同数据类型的数据、变量进行运算时,结果为精度高的数据类型。
1/3的结果为0, 1.0/2 的结果为 0.5
回复 使用道具 举报
int 1/3=0  ;int 10/3=3;
回复 使用道具 举报
前面是什么类型,结果就是什么类型
回复 使用道具 举报
int 1/3=0
还有
int  10/3=3
double  10/3=3.3333333333
回复 使用道具 举报
一般被除数是什么类型,商的结果就是什么类型。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马