问答题
给定程序中,函数fun的功能是:将形参s所指字符串中所有ASCII码值小于97的字符存入形参t所指字符数组中,形成一个新串,并统计出符合条件的字符个数作为函数值返回。
例如,形参s所指的字符串为:Abc@1x56*,程序执行后t所指字符数组中的字符串应为:A@156*。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
int fun(char *s, char *t)
{ int n=0;
while(*s)
{ if(*s < 97) {
/**********found**********/
*(t+n)= __1__ ; n++; }
/**********found**********/
__2__ ;
}
*(t+n)=0;
/**********found**********/
return __3__ ;
}
main()
{ char s[81],t[81]; int n;
printf("/nEnter a string:/n"); gets(s);
n=fun(s,t);
printf("/nThere are %d letter which ASCII code is less than 97: %s/n",n,t);
}
【正确答案】第一处:把符合条件的当前字符存放到t字符串中,所以应填:*s。
第二处:到字符串下一个位置,所以应填:s++。
第三处:返回符合条件的字符个数n,所以应填:n。
【答案解析】