问题 单项选择题

阅读下面程序,程序执行后的结果为()。
#include "stdio.h"
main()
char *str="abcdefghijklmnopq";
while(*str++!=’e’);
printf("%c\n",*str);

A.f

B.a

C.e

D.q

答案

参考答案:A

解析:

本题考查的是取内容运算符“*”和自加运算符“++”的优先级问题。由于“++”的优先级高于“*”,所以题干中*str++!=’e’,即*(str++)!=’e’,当str指向字符’e’时,while循环的条件不成立,但str已经进行了自加指向了字符’f’,所以*str输出字符’f’。

翻译题
单项选择题