问题
单项选择题
有以下程序,程序中库函数islower(ch)用以判断ch中的字母是否为小写字母 #include<stdio.h> #include<ctype.h> void fun(char*P) {int i=0; while(p[i]) {if(p[i]==’’&&islower(p[i-1))p[i-1]=p[i-1]-’a’+’A’; i++: } } main() {char s1[100]="ab cd EFG!"; fun(s1);printf("%s\n",s1); } 程序运行后的输出结果是( )。
A.ab cd EFG!
B.Ab Cd EFg!
C.aB cD EFG!
D.ab cd EFg!
答案
参考答案:C
解析: 函数fun(char*p)的功能是如果p[i]指向的字符为空字符并且其前一个字符是小写字母,则把小写字母变成大字母,所以在主函数中,执行fun(s1)后,小写字母b,d都改成大字母。