news 2026/5/11 17:17:39

数据结构第4章字符串:课后习题全解析(选择题+填空题+算法分析+计算题,含KMP的next函数)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据结构第4章字符串:课后习题全解析(选择题+填空题+算法分析+计算题,含KMP的next函数)

第4章 字符串 课后习题

一、单项选择题

1. 以下程序段的结果是:c的值为( A)。

char*a[5]={"12378","1237","1236789","1237","123708"};

inti,c=0;

for(i=0;i<5;i++)

if(StrCmp(a[i],"1237")==0)c++;

A. 2
B. 5
C. 0
D. 1237

2. 以下程序段的结果是:c的值为(B )。

chara[8]="1236789",int*p=a,intc=0;

while(*p++)c++;

A. 8
B. 7
C. 10
D. 12

3. 在C语言中,分别存储 "S" 和 's',各需要占用(D )字节


A.一个和两个
B.两个
C.一个
D.两个和一个

4. (A )是字符串 "abcd321ABCD" 的子串

A. "21ABC"
B. "abcABCD"
C. "abcD"
D. "321a"

5. 以下程序段的结果中,p指向( A)。

char a[] = "English";
char *p = a;
int n = 0;
while (*p != '\0') { n++; p++; }

A.字符串的结束符
B. a
C.字符h

D. 7

二、填空题

1. 字符串 a1 = "BEIJING", a2 = "BEI", a3 = "BEFANG", a4 = "BEFI" 中最大的是a1

2. 数组 a 经初始化,char a[] = "English"; a[7] 中存放的是'\0'

3. 函数 StrCmp("abA", "aba") 的值为-1

4. 设模式串 a1 = "aBc", a2 = "BCd", a3 = "ABC", a4 = "Abc",主串为 "ABcCDABcdEFaBc",能与主串成功匹配的模式串是a1

三、算法分析题

1. 下列程序用来判断字符串是否对称,若对称则返回 1,否则返回 0,如 f("abba") 返回 1,f("abab") 返回 0。完成程序中的空格,并说明理由。

int(char*s)

{

inti=0,j=0;

while(s[j])j++;

for(j--;i<j&&s[i]==s[j];i++,j--)

return(i<j)0:1;

}

2. 阅读下面的程序,做出简单分析,并说明其功能。

typedefstruct

{

chardata[MaxSize];/*存储串的最大长度为MaxSize */

intlen;/*串的实际长度*/

}SString;

intcount(SString*subs,SString*s)

{

inti=0,j,k,count=0;

for(i=0;s->data[i];i++)

{

for(j=i,k=0;(s->data[j]==subs->data[k]);j++,k++);

if(k==subs->len-1)

count++;

}

return(count);

}

答:

功能说明:统计子串subs在主串s中出现的总次数

四、计算题

1. 设模式串 t = "ABAABC",j 为 t 中字符的位置,利用 next 函数的定义,试求 t 中第 j 个字符的 next 函数值,填于表 4-1。

4-1计算题1

j123456
模式 (t)ABAABC
next (j)011223

2. 设模式串 t = "BCBBC",j 为 t 中字符的位置,利用 next 函数值的递推算法求 t 中第 j 个字符的 next 函数值,填于表 4-2。

表 4-2 计算题 2 表

j12345
模式 (t)BCBBC
next (j)01122
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 17:15:18

CC2530项目实战:用OLED屏打造一个简易的无线传感器网络数据显示终端

CC2530项目实战&#xff1a;用OLED屏打造无线传感器网络数据显示终端 在物联网设备开发中&#xff0c;本地数据显示一直是提升用户体验的关键环节。当我们将CC2530与小巧的OLED屏幕结合&#xff0c;不仅能实现传感器数据的实时可视化&#xff0c;还能为Zigbee网络节点增加直观…

作者头像 李华
网站建设 2026/5/11 17:14:34

Android Input与SendEvent脚本命令在自动化测试中的性能优化实践

1. Android输入事件模拟的两种核心方式 在Android自动化测试领域&#xff0c;模拟用户输入操作是基础中的基础。我经历过无数次深夜调试&#xff0c;最终发现真正高效的输入模拟离不开对底层原理的深入理解。目前主流的两种方式是Input命令和SendEvent脚本&#xff0c;它们就像…

作者头像 李华
网站建设 2026/5/11 17:14:34

群晖相册AI识别解锁指南:让无GPU设备也能享受智能相册功能

群晖相册AI识别解锁指南&#xff1a;让无GPU设备也能享受智能相册功能 【免费下载链接】Synology_Photos_Face_Patch Synology Photos Facial Recognition Patch 项目地址: https://gitcode.com/gh_mirrors/sy/Synology_Photos_Face_Patch 你是否拥有DS918或DS3615xs等群…

作者头像 李华
网站建设 2026/5/11 17:14:34

如何快速导出API账单数据?New API 数据导出功能完整指南

如何快速导出API账单数据&#xff1f;New API 数据导出功能完整指南 【免费下载链接】new-api A unified AI model hub for aggregation & distribution. It supports cross-converting various LLMs into OpenAI-compatible, Claude-compatible, or Gemini-compatible for…

作者头像 李华
网站建设 2026/5/11 17:08:58

从眼图闭合到睁开:揭秘Tx EQ如何拯救高速信号

1. 当高速信号遇上"近视眼"&#xff1a;什么是眼图闭合&#xff1f; 想象一下你戴着近视眼镜看远处的红绿灯&#xff0c;如果度数不够&#xff0c;红绿灯光会模糊成一片&#xff0c;这就是高速信号传输中的"眼图闭合"现象。我在调试一块PCIe 4.0板卡时就遇…

作者头像 李华