📅  最后修改于: 2023-12-03 15:10:15.113000             🧑  作者: Mango
该问题是关于计算机科学的UGC NET CS考试。
UGC NET CS考试是印度大学委员会主办的一项全国性考试,面向计算机科学领域的研究生或博士专业人员。该考试旨在为这些专业人员提供一个资格认证,并为他们提供更好的职业机会。
考虑以下C程序片段:
#include <stdio.h>
int main() {
int i = 20, j = 30;
printf("%d", i+++j);
return 0;
}
上述程序的输出是什么?
(A) 50 (B) 40 (C) 21 (D) 编译失败
该题目的关键点是i+++j这个语句,++运算符有高于+运算符的优先级,因此i++会先被执行,等价于i=i+1,此时i变量的值为21。而j变量的值为30,因此i+++j的值为21+30=51。因此,本题的答案是A,输出50。
本题目考查了对C语言运算符优先级的理解和二元运算符的使用。对于程序员来说,理解各种运算符的优先级和运用规则是非常重要的。这不仅有助于加快代码的编写,也有利于增强代码的可读性和可维护性。