下列程序段的输出结果是()
int k=2,n=2,m;
m=(k+=n*=k);
printf(”%d,%d\n”,m,n);
A、
8,6
B、
8,3
C、
6,4
D、
7,4
【正确答案】:C
【题目解析】:
int k=2,n=2,m;
m=(k+=n*=k); // 运算优先级从右到左,即 n*=k→n=n*k=4,k+=n*k→k=k+n=6,m=k=6
printf(”%d,%d\n”,m,n);//执行,输出 6,4
下列程序段的输出结果是()
int k=2,n=2,m;
m=(k+=n*=k);
printf(”%d,%d\n”,m,n);
8,6
8,3
6,4
7,4
int k=2,n=2,m;
m=(k+=n*=k); // 运算优先级从右到左,即 n*=k→n=n*k=4,k+=n*k→k=k+n=6,m=k=6
printf(”%d,%d\n”,m,n);//执行,输出 6,4