给定程序中,函数fun的功能是:在形参SS所指字符串数组中查找与形参t所指字符串相同的串,找到后返回该串在字符串数组中的位置(下标值),未找到则返回-1。SS所指字符串数组中共有N个内容不同的字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划

admin2014-06-20  19

问题 给定程序中,函数fun的功能是:在形参SS所指字符串数组中查找与形参t所指字符串相同的串,找到后返回该串在字符串数组中的位置(下标值),未找到则返回-1。SS所指字符串数组中共有N个内容不同的字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#include<string.h>
#defineN5
#defineM8
intfun(char(*ss)[M],char*t)
{inti;
/***********found***********/
for(i=0;i<_1_;i++)
/***********found***********/
if(strcmp(ss,t)=0)return_2_;
return-1;
}
main(    )
{charch[N][M]={I.if’,’’while”,”switch’’,,’’int”,”for”),t[M];
intn,i;
printf(’’\nTheoriginalstring\n\n’’);
for(i=0;i<N;i++)puts(ch);printf(”\11”);
printf(”inEnterastringforsearch:”);gets(t);
n=fun(ch,t);
/**********found**********/
if(n=_3_)printf(’’haDon’tfound!\n’’);
elseprintf(’’\nThepositionis%d.\n’’,n);
}

选项

答案(1)N (2)I (3)-1

解析 本题中函数fun的功能是在形参ss所指字符串数组中查找与形参t所指字符串相同的串,找到后返回该串在字符串数组中的位置,未找到则返回-1。
第一空:“for(i=0;i<_1_;i++)”补充循环的结束条件,fun的参数(*ss)[M]是指向N行M列的字符串数组,循环是逐行查找是否存在t所指的字符串,因此循环次数是N次,故第一空处应为“N”。
第二空:“if(strcmp(ss,t)==0)retmm_2_;”说明两个字符串相同,按照题干要求,应返回该串在字符串数组中的位置i,故第二空处为“i”。
第三空:“if(n==_3_)printf(’’\naDon’tfound!\n’’);”,fun函数未找到则返回-1,因此这里是判断n是否等于-1,如果n等于-1标识没有找到,在屏幕上输出“Don’tfound!”因此第三空处为“-1”。
转载请注明原文地址:https://jikaoti.com/ti/yGkiFFFM
0

最新回复(0)