求解一个c语言问题

2019-07-19 20:40发布

int x=10;
int y=3;

怎么得到10.3这个数呢?

怎么将10.3这个数存进一个变量中呢?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
jokeym
1楼-- · 2019-07-19 23:59
liuliupiaoxue 发表于 2017-9-26 14:52
float z;
z=(x*10+y)/10;

z=(float)(x*10+y)/10;
liuliupiaoxue
2楼-- · 2019-07-20 04:38
 精彩回答 2  元偷偷看……
余一水
3楼-- · 2019-07-20 04:51
 精彩回答 2  元偷偷看……
余一水
4楼-- · 2019-07-20 10:12
liuliupiaoxue 发表于 2017-9-26 14:52
float z;
z=(x*10+y)/10;

我是这样打印出这个z的:printf("%f",z);

但是串口输出是0.000000;

可是实际上我的示波器检测出是正确的,因为带了小数点,所以曲线变得平滑了许多,显然很正确,就是串口输出的不对,求教这个printf函数用得不对吗?
liuliupiaoxue
5楼-- · 2019-07-20 10:54
 精彩回答 2  元偷偷看……
余一水
6楼-- · 2019-07-20 11:44
liuliupiaoxue 发表于 2017-9-26 21:28
不知道啊,不过你可以分别打印x 、y、和(x*10+y)/10 ,它们打印正常的话,就是别的问题吧

查了是printf函数的问题,他会将float当成double去处理,怎么解决没找到办法,我再试试,谢谢你

一周热门 更多>