2013年计算机二级C语言上机习题9

全国等级考试资料网 2019-01-18 11:17:00 109

填空题
给定程序中,函数fun的功能是:在形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回所剩字符串的个数。ss所指字符串数组中共有N个字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#include
#define N 5
#define M 10
int fun(char (*ss)[M], int k)
{ int i,j=0,len;
for(i=0; i< __1__ ; i++)
{ len=strlen(ss[i]);
if(len<= __2__)
strcpy(ss[j++],__3__);
}
return j;
}
main()
{ char x[N][M]={"Beijing","Shanghai","Tianjing","Nanjing","Wuhan"};
int i,f;
printf(" The original string ");
for(i=0;if=fun(x,7);
printf("The string witch length is less than or equal to 7 : ");
for(i=0; i}
解题思路:
本题是根据给定的字符串数组中删除串长大于某个值的字符串。
第一处:利用for循环,从几个字符串中进行查找,程序中已经给定了N个字符串,所以应填:N。
第二处:串长由形参k来传递,所以应填:k。
第三处:如果字符串ss[i]的串长小于k,则该字符串仍存在原字符串数组中,位置由变量j 来控制,所以应填:ss[i]。

首页 1 2 3 尾页 相关资料

相关阅读