给定程序中,函数fun的功能是:求出形参SS所指字符串数组中最长字符串的长度,将其余字符串右边用字符木补齐,使其与最长的字符串等长。SS所指字符串数组中共有M个字符串,且串长

admin2021-06-15  42

问题 给定程序中,函数fun的功能是:求出形参SS所指字符串数组中最长字符串的长度,将其余字符串右边用字符木补齐,使其与最长的字符串等长。SS所指字符串数组中共有M个字符串,且串长    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
  注意:源程序存放在考生文件夹下的BLANKl.C中。
  不得增行或删行,也不得更改程序的结构!
#include
#include
#define N 5
#define N 20
void fun(char(*ss)[N])
{  int i,j,n,len=0;
    for(2=0;i{len=strlen(ss);
    if(i==0)n=len;
    if(1en>n)n=len;
    }
    for(i=0;i/**********found**********/
    n=strlen(____1____);
    for(j=0;j/**********found**********/
    SS[____2____]=¨’j
/**********found**********/
    ss[n+j+____3____]=’\0’;
  }
}
msin()
{  char ss[M][N]={"shanghai",
"guangzhou","beij ing","tianjing",
"cchongqing"};
    int i;
    printf("The  original  strings
are:\n");
    for(i=0; iss);
    printf("\n");
    fun(ss);
    printf("The result is:\n");
    for(i=0;iss);
}

选项

答案(1)ss[i] (2)n+j (3)1

解析 第一空:第一个循环求最长字符串的长度len,在第二个循环内在其他字符串的后面补“*”,使其达到长度len。在“for(j=0;j的长度,因此第一空应为“ss”。
    第二空:循环“for(j=0;j    第三空:字符串以“\0”结束,因此需在字符串后加结束符,故第三空应为“1”。
转载请注明原文地址:https://kaotiyun.com/show/R5tp777K
0

最新回复(0)