给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串中右边的字符删除,只保留左边的k个字符。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

admin2013-03-29  35

问题 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串中右边的字符删除,只保留左边的k个字符。ss所指字符串数组中共有N个字符串,且串长小于M。
   请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
   注意:源程序存放在考生文件夹下的BLANK1.C中。
   不得增行或删行,也不得更改程序的结构!
#include  
#include
#define N 5
#define M 10
/**************found**************/
void fun(char(*ss) 【1】 ,int k)
(  int i=0  ;
/***********found**************/
  while(i<  【2】 ){
/************found************/
    ss[k]= 【3】 ;i++;}
}
main()
{  char X[N][M]={"Create","Modify",
"Sort","Skip",  "Delete"} ;
  int i;
  printf("\nThe original string\n\n");
  for(i=0;i);
  printf("\n");
  fun(x,4);   
  printf("\nThe string after deleted:
\n\n");
  for(i=0;i);
  printf("\n");
}

选项

答案 【1】[M] 【2】N 【3】0或’\0’

解析 第一空:第一空补充函数定义,在主函数内fun函数的调用形式是“fun(x,4)",x是二维数组名,故fun函数的第一参数是指向二维数组的指针,因此第一空为“[M]"。
    第二空:“while(i<2)"是填循环终止条件,根据题意,fun函数是将所有串长超过k的字符串中右边的字符删除,因此循环次数为N,故第二空处为“N"。
    第三空:“ss[k]=【3】;i++;"是将串长超过k的字符串中右边的字符删除,即在ss[k]位置为0或"’\0’"。
转载请注明原文地址:https://jikaoti.com/ti/VBn0FFFM
0

最新回复(0)