main() {double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf("%d\n",d*y); }
9个回答
展开全部
你的程序在winTC下编译没问题啊,只是结果变成了0。你想问的是什么问题呢,在程序中,x为1,然后算出的y为0,于是结果为0 ,如果要得到正确结果,应该把x,y定义为float或double型,并把print语句中的%d改为%f
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个main没有返回值,前面要加上void。
int型可以赋值为小数,系统不会报错,但是x里的值其实还是1,小数部分会溢出不算的。y同理。
int型可以赋值为小数,系统不会报错,但是x里的值其实还是1,小数部分会溢出不算的。y同理。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果是C语言,那就是int 整形变量定义错误,
追问
定义咋错了
追答
全部定义成double
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x是整形的,你赋值实行数,不对啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
结果是:3 大类型转化为小类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询