下列给定程序中,函数fun的功能是:统计形参s所指的字符串中数字字符出现的次数,并存放在形参c所指的变量中,最后在主函数中输出。
例如, 若形参s所指的字符串为“abcdef35adah3kjsdf7”,则输出结果为4。
请在下划线处填入正确内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
void fun(char*s,int*t)
int i,n;
n=0;
/********found********/
for(i=0; (1) =0;i++)
/********found********/
if(s[il>=’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);
参考答案:s[i] (2)‘9’ (3)*t=n
解析:
本题关键字有:for循环语句;if语句;指针变量。if语句的条件表达式一般考查内容有:条件判断>与>=、<与<=、==与!=的区别;逻辑判断&&与||的区别;赋值号(=)与等于号(==)的区别,if条件中不出现赋值号。
[微分析]
填空1:for循环语句用来判断字符串是否结束,变量i存放数组下标,所以填入s[j]。
填空2:题目要求统计数字字符的出现次数,所以应填入‘9’。
填空3:指针变量t中存放数字字符个数,所以应填入“*t=n”。