给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息。ss所指字符串数组中共有N个字符串,且串长小于M。程序中库函数substr(s1,s2)的功能是在s1串中查找s2子串,

admin2013-03-29  29

问题 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息。ss所指字符串数组中共有N个字符串,且串长小于M。程序中库函数substr(s1,s2)的功能是在s1串中查找s2子串,若没有,函数值为0,若有,为非0。
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    注意:源程序存放在考生文件夹下的BLANKl.C中。
    不得增行或删行,也不得更改程序的结构!
#include
#include  
#define N 5
#define M 15
void fun(char(*ss)[M],char*substr)
{int i,find=0;
/***************found**************/
  for(i=0;i<【1】;i++)
/***********found**************/
  if(strstr(ss,【2】)!=NULL)
  {  find=1;puts(ss);printf
("\n");}
/************found************/
  if(find==【3】)printf("\nDon’t
found!\n");
}
main()
(char x[N][M]=("BASIC","C langwage",
"Java","QBASIC","Access"},str[M];
    int 1;
    printf("\nThe original string\n\n");
    for(i=0;i);
printf("\n");
  printf ("\nEnter  a  string  for
search:");gets(str);
  fun(x,str);
}

选项

答案(1)N (2)substr (3)0

解析 第一空:“for(i=0;i<【1】;i++)"补充循环的结束条件,fun的参数(*ss)[M]是指向N行M列的字符串数组,循环是逐行字符串是否含有substr所指的子串,因此循环次数是N次,故第一空处应为“N"。
    第二空:“if(strsr(ss,【2】)!=NULL)"是判断字符串ss是否含有substr所指的子串,故第二空处为"substr"。
    第三空:“if(find==【3】)printf("\nDon’t found!\n");"说明没有找到输出提示信息,如果找到了“find=1;puts(ss);printf("\n");"可知find会变成1,在没有找到的情况下find为初值0。故第三空处判断find是否等于0便可知是否找到了符合要求的字符串,因此第三空为“0"。
转载请注明原文地址:https://jikaoti.com/ti/LBn0FFFM
0

最新回复(0)