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

admin2017-11-27  35

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

选项

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

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

最新回复(0)