这是一道c++题目能告诉我答案怎么来的么?还有pn->a/n.b*++pn->a是什么意思啊?
structnum{inta;intb;floatf;}n={1,3,5.0};structnum*pn=&n;则表达式pn->a/n.b*++pn->a的值是_____...
struct num
{int a ;
int b ;
float f ;
}n={1,3,5.0} ;
struct num *pn=&n ;
则表达式pn->a/n.b*++pn->a的值是_____0_________ 展开
{int a ;
int b ;
float f ;
}n={1,3,5.0} ;
struct num *pn=&n ;
则表达式pn->a/n.b*++pn->a的值是_____0_________ 展开
2个回答
展开全部
struct num {
int a ;
int b ;
float f ;
}n = {1,3,5.0} ; // 将n的a,b,f分别初始化为1,3和5.0
pn->a/n.b * ++pn->a是求(a/b)*a,即(1/3)*1 = 0 * 1 = 0
int a ;
int b ;
float f ;
}n = {1,3,5.0} ; // 将n的a,b,f分别初始化为1,3和5.0
pn->a/n.b * ++pn->a是求(a/b)*a,即(1/3)*1 = 0 * 1 = 0
更多追问追答
追问
1/3为什么是0,还有不是++a吗应该是2呀
追答
对的,看漏了。不过
pn->a/n.b * ++pn->a是求(a/b)*(a + 1),即(1/3)*1 = 0 * (1 + 1) = 0
注意到两整数相除是没有小数部分的。即 1/3 = 0
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询