早教吧 育儿知识 作业答案 考试题库 百科 知识分享

C中强制类型转换问题voiddisplay(doublex){longw1=(long)(x/100000),w2=(long)(x/10000)%10,w3=(long)(x/1000)%10,w4=(long)(x/100)%10,w5=(long)(x/10)%10,w6=(long)x%10,w7=(long)(x*10)%10,w8=(long)(x*100)%10;}请问上面的强制类型转换,是

题目详情
C中强制类型转换问题
void display(double x)
{
long w1=(long)(x/100000),w2=(long)(x/10000)%10,w3=(long)(x/1000)%10,
w4=(long)(x/100)%10,w5=(long)(x/10)%10,w6=(long)x%10,w7=(long)(x*10)%10,w8=(long)(x*100)%10;
}
请问上面的强制类型转换,是先转换,还是先运算再转换
还有就是四舍五入问题
▼优质解答
答案和解析
void display(double x)
{
long w1=(long)(x/100000),//都是先计算long后面那个括号里的 再强制转换
w2=(long)(x/10000)%10,//这里是强字转换(x/10000)后,所得结果%10
w3=(long)(x/1000)%10,
w4=(long)(x/100)%10,w5=(long)(x/10)%10,w6=(long)x%10,w7=(long)(x*10)%10,w8=(long)(x*100)%10;
}
四舍五入有什么问题?