柠檬试题库
search
首页 计算机 公务员 驾照 关于

有以下程序,程序中库函数islower (ch)用以判断ch中的字母是否为小写字母 #include #include 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 !
热度🔥626
参考答案:D
解析:

【解析】调用fun函数后,实参数组名s1传给形参指针p,p也指向数组s1。fun函数的功能是遍历字符数组中的所有字符,如果某一个字符是空格并且前一个字符是小写字母的话,就把前一个字符转换为大写。程序中语句p[i-1]=p[i-1]-'a'+'A';即p[i-1]=p[i-1]-32,意思是将p[i-1]中的字符转换为大写。因此D选项正确。
复制题目向AI提问