若X为double型变量,则逗号表达式X=1,X 5, x
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/17 20:56:28
![若X为double型变量,则逗号表达式X=1,X 5, x](/uploads/image/f/6967219-67-9.jpg?t=%E8%8B%A5X%E4%B8%BAdouble%E5%9E%8B%E5%8F%98%E9%87%8F%2C%E5%88%99%E9%80%97%E5%8F%B7%E8%A1%A8%E8%BE%BE%E5%BC%8FX%3D1%2CX+5%2C+x)
不管他们是什么变量这个就是指的y的x次方pow(x,y)是个函数,是指x的y次方.fabs是求绝对值的函数,是关于浮点数的绝对值的.
(int)x=6强制转化再问:(int)x+y/y,你说的是这个答案吗?第二题你会么
pow函数是这样用的,a=pow(b,c);表示a等于b的c次方C语言fabs是求双精度浮点数的绝对值的函数.输入参数是双精度浮点数,计算结果送返绝对值,也是双精度浮点数
float范围-3.4*10(-38次方)~3.4*10(38次方)小数位精度是6-7double范围-1.7*10(-308次方)~1.7*10(308次方)小数位精度是15-16默认情况下如果你使
逗号表达式的值等于等号最贴近等号的式子的值,double是双精度,有个小数点.答案应该是1.0再答:解决你的问题了麻,还有什么不懂可以再问我再问:额,是1.0哦,我题目都看错了,好像会了
y=x+3/2=1.0+1=2.0=2.0000002.0或者2.000000都是一样的再问:为什么不是1.0+1.5再答:先计算3/2,3和2都是整型,这个算出来的值就是1,如果是3.0/2或者3/
等于1了,因为x,y是int型,所以x/y=0,然后加1,然后转换为double型.不过结果后面肯定有很多0.因为是double型的.1.0000000
你是对的.x++后x才是3,表达式值为2
x为double型,那么乘法与除法的优先级相同,按从左到右的顺序.x*3.14159的结果为double型,设结果为Y,那么Y/180结果为整型,因为两者精确度不同,电脑会自动修改为整数.结果为整数.
doublepow(doublex,doubley);所以函数值是double类型,默认double保持六位有效小数所以是8.0000006位有效小数
因为都是整型变量所以结果是2.这个编译器做了强制类型转换的代码.
(a*a+b*b-c*c)/2/a/b:double/2后位数会变然后出/a/b(a*a+b*b-c*c)/(2*a*b)是double/double
有lf的选项就可以选~注意不是1,而是英文的"l"
double属于浮点型,正常输出是带小数点的,你以可以格式化成只输出整数部分.再问:double的精度不是15-16吗,这里为什么是7位再答:计算时会使用15-16位精度,输出则看你的输出缺省格式定义
constdoublePI=3.14159;//或者用宏定义PI,#definePI3.14159doubleX=PI;
两个整数相除是整数,3/4=0;所以y=x=1.0;因为y是double型变量,所以,当然,这种表示不是惟一,如y=1.000000
x/y=12.5/5.0=2.5int(x/y)=int(2.5)=2(int)x/y=12/5.0=2.4结果:2.5+2-2.4=2.1
如果原始表达式是:x/y*z那么不能正确表达的是C和D;如果原始表达式是x/(y*z)那么不能正确表达的是A和B;
A正确的.B错=x/y/zC错=x/y/zD错=x/y/z