早教吧 育儿知识 作业答案 考试题库 百科 知识分享

i为int型变量,且初值是3,有表达式i=(a=5,b=10)+(i+=b,b+=a),表达式的值是?变量i,a,b分别是?答案是25,5,15.百思不得其解,还有一题i为int型变量,初值为3,有表达式i=(i+=i,i*=i),i-10,i%4,则表达式的值为?变量i

题目详情
i为int型变量,且初值是3,有表达式i=(a=5,b=10)+(i+=b,b+=a),表达式的值是?变量i,a,b分别是?
答案是25,5,15.百思不得其解,还有一题i为int型变量,初值为3,有表达式i=(i+=i,i*=i),i-10,i%4,则表达式的值为?变量i的值是?
▼优质解答
答案和解析
逗号表达式取右边的结果,题目中计算是这么取顺序的:
a=5,b=10; //且整个右式的左半为10,即i=10+?
i+=b; //i=13
b+=a; //b=15,且整个右式的右半为15,即i=10+15
最后计算整个表达式的值i=25,a=5,b=15.
下面那道类似,切记逗号表达式优先级最低,且取最右边的值,自己算吧.