A-A+
阅读下列程序 当运行函数时 输入asd af aa z67 则输出为 #include <s
问题详情
阅读下列程序,当运行函数时,输入asd af aa z67,则输出为 #include <stdio.h> #include <ctype.h> #include <string.h> int fun(char*str) { int i,j=0; for(i=0;str[i]!="";i++) if(str[i]!="")str[j++]=str[i]; str[j]=""; } main() { char str[81];
A.asdafaaz67
B.asdafaa267
C.asd
D.z67
参考答案
正确答案:A
解析: 本题题意要求删除所有空格,即除了空格以外的其他所有字符都要留下。由于C语言中没有直接删除字符的操作,所以我们对于删除字符的操作都是采用“留下”字符的算法,以前的题目亦是如此。用str[i]从串头到串尾逐一走动,每走到一个字符都判断其是否为空格,若不是空格(注意在if()的单引号之间有一个空格),则将其保存str[j]中。注意j的下标变化、初值及最后加串结束符'\0'。