有如下定义:int a=10,b,c,flag=0;double pi=3.14,s;
请问执行下面语句后,变量a,b,c,s 的值分别是什么?变量s 的数据类型
是什么?
b=a++;
c=++a;
s=flag?2*b*c:(int)pi/2*a;
a=12
b=10
c=12
s=12.0
s的数据类型是double,pi在强制类型转换后,变成了3,3/2=1(int运算),最后是s=1*12=12追问
b=10
c=12
s=12.0
s的数据类型是double,pi在强制类型转换后,变成了3,3/2=1(int运算),最后是s=1*12=12追问
为什么是double 呢还是不懂
追答因为定义是:
double pi=3.14,s;
也就是pi和s是一个数据类型(两个变量之间用的是逗号,C语言的书中有详细说明),区别是:变量pi被赋值为3.14,而变量s未赋初值。
温馨提示:答案为网友推荐,仅供参考