试题四(共 15分)
阅读以下说明和C函数,将解答填入答题纸的对应栏内。
【说明】
函数del_substr(S,T)的功能是从头至尾扫描字符串 S, 删除其中与字符串T相同的所有子串,其处理过程为:首先从串 S 的第一个字符开始查找子串 T,若找到,则将后面的字符向前移动将子串T覆盖掉,然后继续查找子串T,否则从串S的第二个字符开始查找,依此类推,重复该过程,直到串S的结尾为止。该函数中字符串的存储类型 SString
定义如下:
typedef struct {
char *ch; /*串空间的首地址*/
int length; /*串长*/
}SString;
【C函数】
void del_substr(SString *S, SString T)
{
int i, j;
if ( S->length < 1 || T.length < 1 || S->length < T.length )
return;
i = 0; /* i为串S中字符的下标 */
for ( ; ; ) {
j = 0; /* j为串T中字符的下标 */
while ( i < S->length && j < T.length ) { /* 在串S中查找与T相同的子串 */
if ( S->ch[i]==T.ch[j] ) {
i++; j++;
}
else {
i = (1) ; j = 0; /* i值回退,为继续查找T做准备 */
}
}
if ( (2) ) { /* 在S中找到与T相同的子串 */
i = (3) ; /* 计算S中子串T的起始下标 */
for(k = i+T.length; k<S->length; k++) /* 通过覆盖子串T进行删除 */
S->ch[ (4) ] = S->ch[k];
S->length = (5) ; /* 更新S的长度 */
}
else break; /* 串S中不存在子串T*/
}
}
第1题:
试题一(共15分)
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。
【说明】
某网吧拓扑结构如图 1-1 所示,可提供影视、游戏竞技、视频聊天等多种服务,采用VLAN 划分来区分不同的服务。
问题 1】(2分)
网吧要求实现千兆接入,可采用的方式为 (1) 。
(1)备选答案:
A. FTTx
B. ADSL
C. PSTN拨号
第2题:
第3题:
第4题:
试题三(共 15 分)
阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。
第5题:
第6题: