填空题 给定程序中,函数fun()的功能是统计形参s所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出。例如,形参s所指的字符串为abcdef35adgh3kjsdf7,输出结果为4。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。
#include<stdio.h>
void fun(char *s,int *t)
int i,n;
n=0;
/**********found**********/
for(i=0; (1) !=0;i++)
/**********found**********/
if(s[i]>='0'&&s[i]<= (2) )n++;
/**********found**********/
(3) ;

main()
char s[80]="abcdef35adgh3kjsdf7";
int t;
printf("/nThe original string is:%s/n",s);
fun(s,&t);
printf("/nThe result is:%d/n",t);


  • 1、
【正确答案】 1、(1)s[i] (2)'9' (3)*t=n    
【答案解析】[解析] 函数fun()的功能是统计形参s所指字符串中数字字符出现的次数。数字字符的判断是s[i]>='0'且s[i]<='9',满足该条件后,计数变量加1。搜索整个字符串,便得到数字字符出现的次数。
第一空:循环终止条件是达到了字符串的尾部,字符串以“'/0'”(或NULL)结束,故第一空处应为“s[i]”。
第二空:数字字符的判断是s[i]>='0'且s[i]<='9',故第二空处应为“'9'”。
第三空:这里是将数字字符出现的次数存放在形参t里,n记录了数字字符的个数,而形参t是指针变量,故第三空处应为“*t=n”。
[考点] if语句,循环条件。