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

admin2017-09-23  34

问题 下列给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串中后面的字符删除,只保留前面的k个字符。ss所指字符串数组中共有N个字符串,且串长小于M。
    请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
    注意:部分源程序给出如下。
    不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio.h >
#include < string.h >
#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","Modi.fy","Sort","skip","Delete");
    int i;
    printf ("\nThe original
string\n\n");
  for(i=0;i < N;i++)puts(x);
  printf("\n");
  fun(x,4);
  printf ("\nThe string after
deleted:\n\n");
    for(i=0 ; i < N;i++)
    puts(x);
    printf("\n");
}

选项

答案(1)[M] (2)N (3)’\0’

解析 填空1:根据main函数中的函数调用语句,确定函数定义时的形式参数,所以填入[M]。
填空2:while循环语句需要对所有字符串进行操作,因此循环条件是i<N。
填空3:字符串结尾加入字符串结束标识‘\0’。
转载请注明原文地址:https://jikaoti.com/ti/OTa0FFFM
0

最新回复(0)