A-A+
以下程序的输出结果是 char cchar(char ch) { if(ch>='A'&&c
问题详情
以下程序的输出结果是 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 { "%$n", s); }
A.abc+ABC=DEFdef
B.abc+abc=defdef
C.abcABCDEFdef
D.abcabcdefdef请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
解析:本题考核的知识点是字符型指针变量与函数的综合应用。本题首先定义了一个函数cchar(),有一个字符型参数ch。在函数中首先判断该字符是否为大写字母,如果是则把它转换成小写字符再赋值给cb,把ch作为函数值返回。在主函数中定义了一个字符数组s并初始化,然后定义了一个指针变量并使它指向数组s。接着通过一个while循环利用指针变量p,依次取出字符数组的字符(直到遇到字符串结束标志['\0'为止),并调用cchar()函数,把大写字母转换成小写字母,其他字符不变。最后输出字符数组为s中的内容,结果为“abc+abc=defdeF”。所以,4个选项中B为所选。