首页 > 试题广场 >

C语言中,设a=3,b=4,执行语句“printf("%d,

[单选题]

C语言中,设a=3,b=4,执行语句“printf("%d,%d",(a,b),(b,a));”的输出结果是()

  • 3,4
  • (3,4),(4,3)
  • 4,3
  • 不确定
4,3这个是逗号表达式的问题,
逗号表达式从左往右执行,最后显示最右边的那个。
即(a,b)相当于b,如果是
printf("%d,%d",(++a,++b),(++b,++a));
输出为6,5
发表于 2019-08-24 21:52:35 回复(3)
注意 (a ,b)并不是一个数对,而是一种运算--逗号表达式。
运算方法:从左往右逐个计算表达式,整个表达式的值为最后一个表达式的值(右括号左侧)。
故:( a,b ) = b, ( b, a ) = a.
发表于 2021-03-05 20:26:55 回复(0)
注意 (a ,b)并不是一个数对,而是一种运算--逗号表达式。 运算方法:从左往右逐个计算表达式,整个表达式的值为最后一个表达式的值(右括号左侧)。 故:( a,b ) = b, ( b, a ) = a.
发表于 2023-01-28 12:35:01 回复(0)
发表于 2020-08-06 08:24:29 回复(0)
考察逗号表达式
发表于 2023-10-23 14:16:14 回复(0)
发表于 2023-03-13 16:47:11 回复(0)
从左往右执行,取最右边的值
发表于 2021-03-17 19:16:19 回复(0)