填空题 下列给定程序中,函数fun的功能是:在形参ss所指字符串数组中查找与形参t所指字符串相同的串,找到后返回该串在字符串数组中的位置(即下标值),若未找到则返回-1。ss所指字符串数组中共有N个内容不同的字符串,且串长小于M。
请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#nclude <stdio.h>
#include <string.h>
#define N 5
#define M 8
int fun(char(**ss)[M],char*t)
{ int i;
/* * * * * * * * * *found* * * * * * * * * *
for(i=0;i< 1;i++)
/* * * * * * * * * *found* * * * * * * * * *
if(strcmp(ss[i],t)==0) return 2;
return-1;
}
main( )
{char ch[N][M]={"if","while","switch","int","for"},t[M];
int n,i;
printf("/nThe original string/n/n");
for(i=0;i<N;i+ +) puts(ch[i]);
printf("/n");
printf("/nEnter a string for search:");gets(t);
n=fun(ch,t);
/* * * * * * * * * *found* * * * * * * * * *
if(n== 3)printf("/nDon"t found!/n");
else printf("/nThe position is %d./n".n);
}
【正确答案】
【答案解析】N i -1 [解析] 本题考查:for循环语句;函数返回值;if语句条件表达式。
填空1:变量i是循环变量,它的取值范围是在O~N之间。
填空2:如果ss所指字符串数组中的字符串和t所指字符串相同的话,则返回其下标值,即return i;否则返回-1,即return-1;。
填空3:在main函数中输出最后结果,判断函数返回值n,如果n=-1,说明没有找到,否则输出n。