c语言中怎么算表达式的数据类型例如:表达式18/4*sqrt(4.0)/8值的数据类型为什么?谢谢
4个回答
展开全部
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:printf("%d",
sizeof(18/4*sqrt(4.0)/8));。
3、编译器运行test.cpp文件,此时通过sizeof得到其占用字节数为8,因此是double类型的数据。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:printf("%d",
sizeof(18/4*sqrt(4.0)/8));。
3、编译器运行test.cpp文件,此时通过sizeof得到其占用字节数为8,因此是double类型的数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
double
18/4
=
4
int
与
int运算仍为
int
sqrt(4.0)
=
2.0
double
返回值的类型是函数sqrt定义的
18/4*sqrt(4.0)
为int与double运算,为保证精度将前面的int提升为double类型,此时结果为double
double/int
与前面类似
,要提升int为double,结果仍为double
18/4
=
4
int
与
int运算仍为
int
sqrt(4.0)
=
2.0
double
返回值的类型是函数sqrt定义的
18/4*sqrt(4.0)
为int与double运算,为保证精度将前面的int提升为double类型,此时结果为double
double/int
与前面类似
,要提升int为double,结果仍为double
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
double,最终结果类型的值是表达式中单个运算的最高类型,sqrt返回的是double,这个是c语言基本类型的最高类型了,所以是double
是的
是的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/和*等于平时计算的除以(不取余数)和乘以
然后sqrt()等于开方
18/4*sqrt(4.0)/8=18除以4乘以2.0除以8=1.0
然后sqrt()等于开方
18/4*sqrt(4.0)/8=18除以4乘以2.0除以8=1.0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询