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

admin2018-03-28  29

问题 下列给定程序中,函数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://kaotiyun.com/show/gJxp777K
0

最新回复(0)