首页 > 试题广场 >

程序运行后的输出结果是()

[单选题]

有以下程序

int main() {
    char a = 'a',b; 
    printf("%c,", ++a); 
    printf("%c\n", b = a++);
    return 0;
}

程序运行后的输出结果是()

  • b,b
  • b,c
  • a,b
  • a,c
++a后,值变为b,a++值赋给b,此时b的值为b,然后a再自加,所以最后a的值为c,b的值为b
发表于 2019-01-18 19:53:38 回复(0)
++a和a++如果单独是一条语句,效果是一样的,如果是表达式的一部分,a++先试用,后自增,++a先自增,后使用
发表于 2021-10-08 21:57:21 回复(0)
b=a++返回值是b的值
发表于 2022-07-09 06:14:32 回复(0)
a++是先自加
发表于 2017-09-20 13:05:39 回复(3)
++a先加后用。第一次为65,转成char 是b ,a++先用后加,用的时候a等于65,用完a=66
发表于 2022-03-05 16:03:41 回复(0)
第一个是a先加所以是b,第二个a前面已经自加了是b,所以是b=b,后面的++是输出后再加的。
发表于 2019-07-25 19:51:24 回复(0)
这题什么鬼
发表于 2018-04-24 11:17:59 回复(0)
第二个的a是继承第一个打印语句的a,怎么判断打印语句什么时候继承,什么时候不继承呢
发表于 2023-10-02 21:00:51 回复(0)
a++是先使用a的值,再自加;
++a是先自加1,再使用改变后的值。
发表于 2020-09-09 08:53:21 回复(0)
按照ASCII嘛,char确实可以++
发表于 2019-03-30 19:51:12 回复(0)
按照ASCII嘛,char确实可以++
发表于 2019-02-27 13:48:50 回复(0)
b=a++;   // a++后加 ,先把a值赋给b,a在自加。
发表于 2018-04-15 16:28:34 回复(0)
a++返回的是当前a的副本,并对a的引用 +1。即下次调用直接就是+1后的值
发表于 2018-04-02 13:33:28 回复(0)
a++执行之后,a的大小是否变化?
发表于 2018-03-26 08:30:11 回复(2)