4个回答
展开全部
1、3/2,因为都是整数形式,系统默认是int型,因此结果也是int型,所以这个中间值是1,而不是1.5。
2、x,y都是double型,y=x+1,编译系统在运行时会先将1转化成double类型,1.000000,实际的运算是y=1.000000+1.000000=2.000000。示例程序如下:
#include <stdio.h>
int main()
{
double x=1,y;
y=x+3/2;
printf("%f\n",y);
return 0;
}
运行结果为:
2.000000
展开全部
什么鬼题目,B和C不是一样的吗,都是错误的,结果应该是2.000000,3/2是两个整型数相除,结果是没有小数点的,直接去掉,不四舍五入,因此等于1,x是double型,加1结果还是double型,y也是double型,因此结果等于2.000000
追问
2和3不用声明直接默认为整型吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
龙虎风云
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询