问题 单项选择题

以下程序的输出结果是______。
char cchar(char ch)
if(ch>=’A’&&ch<=’z’)ch=ch-’A’+’a’;
return ch;

main()
char s[]="ABC+abc=defDEF",*p=s;
while(* p)
* p=cchar(* p);
p++;

printf("% s\n", s);

A.abe+ABC=DEFdef

B.abc+abe=defdef

C.abcaABCDEFdef

D.abcabcdefdef

答案

参考答案:B

解析: 字符数组元素作函数参数是单向的值传递。函数cchar的功能是将大写字母转换为小写字母。主函数中while循环语句的条件是判断指针p当前指向的字符是否为空,若不为空,则调用函数cchar,即主函数中通过循环语句将字符串"ABC+abc=defDEF"中的大写字母全部转换为小写字母,因此printf的输出结果为选项B。

选择题
单项选择题