我爱橙 发表于 2022-4-28 13:04:35

EX5.7 a++ a-- √

本帖最后由 我爱橙 于 2022-5-2 16:56 编辑

下面程序运行时,若从键盘输入 5<回车>,则输出结果是。

main( )
{ int a;
   scanf("%d", &a);
   if (a++>5) printf("%d\n", a);
   else printf("%d\n", a--);
}


A.7


B.6


C.5


D.4

a++先输出a再自增,那输出的5>5为假应该执行else,即输出a--,同样先输出a再自减,输出结果不应该是5吗,为什么会是6?

风车呼呼呼 发表于 2022-4-28 13:13:53

a++ > 5为假,走else,此时a=6,打印a--就相当于打印a,所以是6
页: [1]
查看完整版本: EX5.7 a++ a-- √