第四章 串 习题及答案

合集下载

严蔚敏《数据结构(c语言版)习题集》答案第四章 串

严蔚敏《数据结构(c语言版)习题集》答案第四章 串
《一定能摸到红球吗?》说课稿
林银花
一、教材说明:
1、 课题:《一定能摸到红球吗?》
2、 本节内容的地位和作用
在现代社会中,人们面临着更多的机会和选择,常常需要在不确定情境中作出合理的决策,概率正是通过对不确定现象和事件发生的可能性的刻画,来为人们更好的制定决策提供依据和建议.本节内容又是义务教育阶段,唯一培养学生从不确定的角度来观察世界的数学内容,让学生了解可能性是普遍的,有助于他们理解社会,适应生活.
(1) 每位同学从盒子中轮流摸球,记录下所摸球的颜色,并将球放回盒中.
(2) 做10次这样的活动,将最终结果填在表中.
(3) 全班将各小组活动进行汇总,摸到红球的次数是多少?摸到黄球的次数是多少?他们各占总数的百分比是多少?
(4) 你认为哪种颜色的球多?打开看一看.
(5) 如果从盒中任意摸出一球,你认为摸到哪种颜色的球可能性大? 学生阅读学习目标.
学生两人一组进行活动.一人摸一人记录.并交流.
题(1):学生先想象后画图,并通过搭建几何体验证学习成果。
题(2):学生四人一组进行活动,一人搭几何体,另三人画图并交流,如有异义,举手询问。依次轮流。 使学生明确学习目标,进入学习角色,做到有的放矢。
目的是使学生体会到进行概率试验时,一定要保证随机性.
课堂组织策略:创设贴近学生生活,生动有趣的问题情境,开展活泼、主动、有效的数学活动,组织学生主动参与、勤于动手、积极思考,使他们在自主探索和合作交流的过程中真正理解和掌握概率有关内容。
学生学习策略:明确学习目标,了解所需掌握的知识,在教师的组织、引导、点拨下主动地从事观察、试验、猜测、验证与交流等数学活动,从而真正有效地理解和掌握知识。
(3)、情感目标:

(完整版)线性代数练习册第四章习题及答案

(完整版)线性代数练习册第四章习题及答案

第四章 线性方程组§4-1 克拉默法则一、选择题1.下列说法正确的是( C )A.n 元齐次线性方程组必有n 组解;B.n 元齐次线性方程组必有1n -组解;C.n 元齐次线性方程组至少有一组解,即零解;D.n 元齐次线性方程组除了零解外,再也没有其他解. 2.下列说法错误的是( B )A 。

当0D ≠时,非齐次线性方程组只有唯一解;B 。

当0D ≠时,非齐次线性方程组有无穷多解;C 。

若非齐次线性方程组至少有两个不同的解,则0D =; D.若非齐次线性方程组有无解,则0D =. 二、填空题1.已知齐次线性方程组1231231230020x x x x x x x x x λμμ++=⎧⎪++=⎨⎪++=⎩有非零解,则λ= 1 ,μ= 0 。

2.由克拉默法则可知,如果非齐次线性方程组的系数行列式0D ≠,则方程组有唯一解i x =iD D. 三、用克拉默法则求解下列方程组 1.832623x y x y +=⎧⎨+=⎩解:832062D ==-≠123532D ==-,2821263D ==-所以,125,62D Dx y D D====- 2.123123123222310x x x x x x x x x -+=-⎧⎪+-=⎨⎪-+-=⎩解:213112112122130355011101r r D r r ---=--=-≠+---11222100511321135011011D r r ---=-+-=---,212121505213221310101101D r r --=-+-=-----, 3121225002112211511110D r r --=+=---所以, 3121231,2,1D D Dx x x D D D ======3.21241832x z x y z x y z -=⎧⎪+-=⎨⎪-++=⎩解:132010012412041200183583D c c --=-+-=≠-13110110014114020283285D c c -=-+=,2322112102112100123125D c c -=-+=--, 31320101241204120182582D c c =-=--所以, 3121,0,1D D Dx y z D D D ====== 4.12341234123412345242235232110x x x x x x x x x x x x x x x x +++=⎧⎪+-+=-⎪⎨---=-⎪⎪+++=⎩解:2131412131111111111214012322315053733121102181231235537013814222180514r r D r r r r r r r r ---=------------+=----=-+---3214212325111511102221422518231523528110121101005110010525182733214210252823522c c D c c c c c c --------=----------+=-----=----212314113231511151112140723222150123733021101518723230132123733031284315181518r r D r r r r r r r r -----=--------------=----=------12342213111512151031224522182325111132283101101002510200251521852974265211228115127c c D c c c c c c -------=---------+=-----=----12432322111152115312125252223121135231200100215215552502714251152604c c D c c r r r r --------=----------+=----=---所以, 312412341,2,3,1D D D Dx x x x D D D D========-§4-2 齐次线性方程组一、选择题1.已知m n ⨯矩阵A 的秩为1n -,12,αα是齐次线性方程组0AX =的两个不同的解,k 为任意常数,则方程组0AX =的通解为( D )。

第四章 习题答案

第四章 习题答案

第四章的习题及答案4-1 设有一台锅炉,水流入锅炉是之焓为62.7kJ ·kg -1,蒸汽流出时的焓为2717 kJ ·kg -1,锅炉的效率为70%,每千克煤可发生29260kJ 的热量,锅炉蒸发量为4.5t ·h -1,试计算每小时的煤消耗量。

解:锅炉中的水处于稳态流动过程,可由稳态流动体系能量衡算方程:Q W Z g u H s +=∆+∆+∆221体系与环境间没有功的交换:0=s W ,并忽 动能和位能的变化, 所以: Q H =∆设需要煤mkg ,则有:%7029260)7.622717(105.43⨯=-⨯m解得:kg m 2.583=4-2 一发明者称他设计了一台热机,热机消耗热值为42000kJ ·kg -1的油料0.5kg ·min -1,其产生的输出功率为170kW ,规定这热机的高温与低温分别为670K 与330K ,试判断此设计是否合理?解:可逆热机效率最大,可逆热机效率:507.06703301112max =-=-=T T η 热机吸收的热量:1m in210005.042000-⋅=⨯=kJ Q热机所做功为:1m in 102000m in)/(60)/(170-⋅-=⨯-=kJ s s kJ W该热机效率为:486.02100010200==-=Q W η 该热机效率小于可逆热机效率,所以有一定合理性。

4-3 1 kg 的水在1×105 Pa 的恒压下可逆加热到沸点,并在沸点下完全蒸发。

试问加给水的热量有多少可能转变为功?环境温度为293 K 。

解:查水蒸气表可得始态1对应的焓和熵为:H 1=83.93kJ/kg, S 1=0.2962kJ/kg.K 末态2对应的焓和熵为:H 2=2675.9kJ/kg, S 2=7.3609kJ/kg.K)/(0.259293.839.267512kg kJ H H Q =-=-=)/(0.522)2962.03609.7(15.2930.25920kg kJ S T H W sys id =-⨯-=∆-∆=4-4如果上题中所需热量来自温度为533 K 的炉子,此加热过程的总熵变为多少?由于过程的不可逆性损失了多少功? 解:此时系统的熵变不变)./(0647.7K kg kJ S sys =∆炉子的熵变为)./(86.45330.2592K kg kJ T H T Q S sur -=-=∆-==∆ )./(205.286.40647.7K kg kJ S t =-=∆ )/(0.646205.215.2930kg kJ S T W t l =⨯=∆=4-5 1mol 理想气体,400K 下在气缸内进行恒温不可逆压缩,由0.1013MPa 压缩到1.013MPa 。

数据库系统原理教程课后习题及答案(第四章)

数据库系统原理教程课后习题及答案(第四章)

第4章数据库安全性1 .什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。

2 .数据库安全性和计算机系统的安全性有什么关系?答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。

只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。

系统安全保护措施是否有效是数据库系统的主要指标之一。

数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的,3 .试述可信计算机系统评测标准的情况,试述TDI / TCSEC 标准的基本内容。

答:各个国家在计算机安全技术方面都建立了一套可信标准。

目前各国引用或制定的一系列安全标准中,最重要的是美国国防部(DoD )正式颁布的《DoD 可信计算机系统评估标准》(伽sted Co 哪uter system Evaluation criteria ,简称TcsEc ,又称桔皮书)。

(TDI / TCSEC 标准是将TcsEc 扩展到数据库管理系统,即《可信计算机系统评估标准关于可信数据库系统的解释》(Tmsted Database Interpretation 简称TDI , 又称紫皮书)。

在TDI 中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。

TDI 与TcsEc 一样,从安全策略、责任、保证和文档四个方面来描述安全性级别划分的指标。

每个方面又细分为若干项。

4 .试述T csEC ( TDI )将系统安全级别划分为4 组7 个等级的基本内容。

答:根据计算机系统对安全性各项指标的支持情况,TCSEC ( TDI )将系统划分为四组(division ) 7 个等级,依次是D 、C ( CI , CZ )、B ( BI , BZ , B3 )、A ( AI ) ,按系统可靠或可信程度逐渐增高。

这些安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护包含较低级别的所有保护要求,同时提供更多或更完善的保护能力。

吉林省专升本数据结构习题及答案——第四章

吉林省专升本数据结构习题及答案——第四章

吉林省专升本考试数据结构分章习题及参考答案———选择题(第四章)1、多维数组之所以有行优先顺序和列优先顺序两种存储方式是因为( )。

A、数组的元素处在行和列两个关系中B、数组的元素必须从左到右顺序排列C、数组的元素之间存在次序关系D、数组是多维结构,内存是一维结构2、串的长度是()A、串中不同字母的个数B、串中不同字符的个数C、串中所含字符的个数D、串中所含字符的个数,且大于03、串与普通的线性表相比较,它的特殊性体现在()。

A、顺序的存储结构B、链式存储结构C、数据元素是一个字符D、数据元素任意4、若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1……n(n+1)/2]中,则在B中确定aij(i<j)的位置k的关系为( )。

A、i*(i-1)/2+jB、j*(j-1)/2+iC、i*(i+1)/2+jD、j*(i+1)/2+i5、有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是()。

A、60B、66C、18000D、336、若6行8列的数组以列序为主序顺序存储,基地址为1000,每个元素占2个存储单元,则第5行第3列的元素(假定无第0行第0列)的地址是()。

A、 1086B、 1032C、 1068D、答案A,B,C都不对7、下面的说法中,不正确的是()A、数组是一种线性结构B、数组是一种定长的线性结构C、除了插入与删除操作外,数组的基本操作还有存取修改、检索和排序等D、数组的基本操作有存取、修改、检索和排序等,没有插入与删除操作8、设有一个n*n的对称矩A,将其下三角部分按行存放在一维数组B中,而A[0][0]存放于B[0]中,那么第i行对角线元素A[i][i]存放于B中( ) 处。

A、(i+3)i/2B、(i+1)i/2C、(2n-i+1)i/2D、(2n-i-1)i/29、设模式T=“abcabc”,则该模式的next值为()A、{-1,0,0,1,2,3}B、{-1,0,0,0,1,2}C、{-1,0,0,1,1,2}D、{-1,0,0,0,2,3}10、下面()不属于特殊矩阵。

数据结构第四章串习题及答案

数据结构第四章串习题及答案

习题四串一、单项选择题‎1.下面关于串‎的的叙述中‎,哪一个是不‎正确的?()A.串是字符的‎有限序列 B.空串是由空‎格构成的串‎C.模式匹配是‎串的一种重‎要运算 D.串既可以采‎用顺序存储‎,也可以采用‎链式存储2.串是一种特‎殊的线性表‎,其特殊性体‎现在()。

A.可以顺序存‎储 B.数据元素是‎一个字符C.可以链接存‎储 D.数据元素可‎以是多个字‎符3.串的长度是‎指()A.串中所含不‎同字母的个‎数 B.串中所含字‎符的个数C.串中所含不‎同字符的个‎数 D.串中所含非‎空格字符的‎个数4.设有两个串‎p和q,其中q是p‎的子串,求q在p中‎首次出现的‎位置的算法‎称为()A.求子串 B.联接 C.匹配 D.求串长5.若串S=“softw‎a re”,其子串的个‎数是()。

A.8 B.37 C.36 D.9二、填空题1.含零个字符‎的串称为_‎_____‎串。

任何串中所‎含____‎__的个数‎称为该串的‎长度。

2.空格串是指‎__ __,其长度等于‎__ __。

3.当且仅当两‎个串的__‎____相‎等并且各个‎对应位置上‎的字符都_‎_____‎时,这两个串相‎等。

一个串中任‎意个连续字‎符组成的序‎列称为该串‎的____‎__串,该串称为它‎所有子串的‎_____‎_串。

4.INDEX‎(‘DATAS‎T RUCT‎U RE’,‘STR’)=_____‎___。

5.模式串P=‘abaab‎c ac’的next‎函数值序列‎为____‎____。

6.下列程序判‎断字符串s‎是否对称,对称则返回‎1,否则返回0‎;如 f("abba")返回1,f("abab")返回0;int f((1)__ _____‎_){int i=0,j=0;while‎(s[j])(2)___ _____‎;for(j--; i<j && s[i]==s[j]; i++,j--);retur‎n((3)___ ____)}7.下列算法实‎现求采用顺‎序结构存储‎的串s和串‎t的一个最‎长公共子串‎。

数学分析课本(华师大三版) 习题及答案第四章

数学分析课本(华师大三版) 习题及答案第四章

数学分析课本(华师大三版)习题及答案第四章数学分析课本(华师大三版)-习题及答案第四章第四章函数的连续性一、填空题1x0xsinx1.设f(x)??kx?0,若函数f(x)在定义域内连续,则xsin11x0xk;2.函数f(x)??x?0?x?1的间断点是;x?0?sinx3.函数f(x)?x的已连续区间就是;4.函数f(x)?1的已连续区间就是;x2?2x?3x2?95.函数f(x)?的间断点是;x(x?3)6.函数f(x)?x?2的间断点就是;(x?1)(x?4)1的连续区间是;(x?1)(x?2)7.函数f(x)??ex?e?x?x?0在x?0点已连续,则k?;8.设f(x)??x?x?0?k?1?x?0?x?1?0?x?1的间断点是;9.函数f(x)x?1??x?31?x?3?10.函数f(x)??x?0?ax?ba?b?0.则f(x)处处连续的充要条件是2x?0?(a?b)x?xb?;12?x11.函数f(x)??ex?0,则limf(x)?,若f(x)无间断点,则a?;x?0?x?0?a?1?x2?x??1,当12.如果f(x)??1?xa?时,函数f(x)已连续x1a二、选择填空1.设f(x)和?(x)在,内有定义,f(x)为连续函数,且f(x)?0,?(x)存有间断点,则()a.??f(x)?必有间断点。

b.??(x)?2必有间断点c.f??(x)?必存有间断点d.(x)f(x)必有间断点2.设函数f(x)?xa?ebx,在,??内连续,且xlimf(x)?0,则常数a,b满足(a.a?0,b?0b.a?0,b?0c.a?0,b?0d.a?0,b?013.设f(x)?1?ex1,当x?0;f(x)??1,当x?0,则1?exa有可去间断点。

b。

有跳跃间断点。

c有无穷间断点d连续4.函数f(x)?nlim1?x??1?x2na不存有间断点。

b存有间断点x??1c存有间断点x?0d存有间断点x?15.设f(x)1x?0??xsin1x?0?0x?0;g(x)??,则在点x?0处有间断点的函数是?x?1x?0amax{f(x),g(x)}bmin{f(x),g(x)}cf(x)?g(x)df(x)?g(x)6.下述命题正确的是a设f(x)与g(x)均在x0处不已连续,则f(x)g(x)在x0处必不已连续。

第四章 课后习题及答案

第四章 课后习题及答案

第四章中学生学习心理课后习题及答案一、理论测试题(一)单项选择题1.当人从黑暗走入亮处后,视网膜的光感受阈限会迅速提高,这个过程是()。

A.适应B.对比C. 明适应D.暗适应2.人的视觉、听觉、味觉等都属于( )。

A.外部感觉B.内部感觉C.本体感觉D.机体感觉3.在热闹的聚会上或逛自由市场时,如果你与朋友聊天,朋友说话时的某个字可能被周围的噪音覆盖,但你还是知道你的朋友在说什么,这是知觉的()在起作用。

A、选择性B、整体性C、恒常性D、理解性4. 知觉的条件在一定范围改变时,知觉映像却保持相对稳定,这是知觉的()。

A.选择性B.整体性C.恒常性D.理解性5.大教室上课,教师借用扩音设备让全体学生清晰感知,这依据感知规律的()。

A.差异率B.强度率C.活动率D.组合率6.“万绿丛中一点红”容易引起人们的无意注意,这主要是由于刺激物具有()。

A.强度的特点B.新异性的特点C.变化的特点D.对比的特点7.小学低年级学生注意了写字的间架结构,就忽略了字的笔画,注意了写字而忘了正确的坐姿,原因是这个年龄阶段的学生()发展水平较低。

A.注意的广度B.注意的稳定性C.注意的分配D.注意的转移8.“视而不见,听而不闻”的现象,典型地表现了()。

A.注意的指向性B.注意的集中性C.注意的稳定性D.注意的分配性9.一种记忆特点是信息的保存是形象的,保存的时间短、保存量大,编码是以事物的物理特性直接编码,这种记忆是()。

A.短时记忆B.感觉记忆C.长时记忆D.动作记忆10.我们常常有这样的经验,明明知道对方的名字,但想不起来,这印证了遗忘的()。

A.干扰说B.消退说C.提取失败说D.压抑说11.学习后立即睡觉,保持的效果往往比学习后继续活动保持的效果要好,这是由于()。

A.过度学习B.记忆的恢复现象C.无倒摄抑制的影响D.无前摄抑制的影响12.遇见小时候的同伴,虽然叫不出他(她)的姓名,但确定是认识的,此时的心理活动是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章串习题及答案一、基础知识题4.1简述下列每对术语的区别:空串和空白串;串常量和串变量;主串和子串;静态分配的顺序串和动态分配的顺序串;目标串和模式串;有效位移和无效位移。

4.2假设有如下的串说明:char s1[30]="Stocktom,CA", s2[30]="March 5 1999", s3[30], *p;(1)在执行如下的每个语句后p的值是什么?p=stchr(s1,'t'); p=strchr(s2,'9'); p=strchr(s2,'6');(2)在执行下列语句后,s3的值是什么?strcpy(s3,s1); strcat(s3,","); strcat(s3,s2);(3)调用函数strcmp(s1,s2)的返回值是什么?(4)调用函数strcmp(&s1[5],"ton")的返回值是什么?(5)调用函数stlen(strcat(s1,s2))的返回值是什么?4.3设T[0..n-1]="adaabcaabaa",P[0..m-1]="aab".当用模式串匹配目标串T 时,请给出所有的有效位移。

算法NaiveStrMatch(T,P)返回的位移是哪一个位移。

二、算法设计题:4.4利用C的库函数strlen,strcpy和strcat写一算法void StrInsert(char *S, char *T, int i),将串T插入到串S的第i个位置上。

若i大于S的长度,则插入不执行。

4.5利用C的库函数strlen 和strcpy(或strncpy)写一算法void StrDelete(char *S,int i, int m)删去串S中从位置i开始的连续m个字符。

若i≥strlen(S),则没有字符被删除;若i+m≥strlen(S),则将S中从位置i开始直至末尾的字符均删去。

4.6以HString为存储表示,写一个求子串的算法。

4.7一个文本串可用事先给定的字母映射表进行加密。

例如,设字母映射表为:a b c d e f g h i j k l m n o p q r s t u v w x y zn g z q t c o b m u h e l k p d a w x f y i v r s j则字符串"encrypt"被加密为"tkzwsdf".试写一算法将输入的文本串进行加密后输出;另写一算法,将输入的已加密的文本串进行解密后输出。

4.8写一算法void StrReplace(char *T, char *P, char *S),将T中首次出现的子串P替换为串S。

注意:S和P的长度不一定相等。

可以使用已有的串操作。

4.9将NaveStrMatch改写为输出目标串中所有也模式串匹配的有效位移。

*4.10利用4.9的结果写一算法void StrReplaceAll(char *T, char *P, char *S),将T中出现的所有与P相等的不重叠子串替换为S,这里S和P的长度不一定相等。

4.11若S和T是用结点大小为1的单链表存储的两个串,试设计一个算法找出S中第一个不在T中出现的字符。

答案:4.1简述下列每对术语的区别:空串和空白串;串常量和串变量;主串和子串;静态分配的顺序串和动态分配的顺序串;目标串和模式串;有效位移和无效位移。

空串是指不包含任何字符的串,它的长度为零。

空白串是指包含一个或多个空格的串,空格也是字符。

串常量是指在程序中只可引用但不可改变其值的串。

串变量是可以在运行中改变其值的。

主串和子串是相对的,一个串中任意个连续字符组成的串就是这个串的子串,而包含子串的串就称为主串。

静态分配的顺序串是指串的存储空间是确定的,即串值空间的大小是静态的,在编译时刻就被确定。

动态分配的顺序串是在编译时不分配串值空间,在运行过程中用malloc和free等函数根据需要动态地分配和释放字符数组的空间(这个空间长度由分配时确定,也是顺序存储空间)。

目标串和模式串:在串匹配运算过程中,将主串称为目标串,而将需要匹配的子串称为模式串,两者是相对的。

有效位移和无效位移:在串定位运算中,模式串从目标的首位开始向右位移,每一次合法位移后如果模式串与目标中相应的字符相同,则这次位移就是有效位移(也就是从此位置开始的匹配成功),反之,若有不相同的字符存在,则此次位移就是无效位移(也就是从此位置开始的匹配失败)。

4、2解:(1) stchr(*s,c)函数的功能是查找字符c在串s中的位置,若找到,则返回该位置,否则返回NULL。

执行p=stchr(s1,'t');后p的值是指向字符t的位置,也就是p==&s1[5]。

执行p=strchr(s2,'9');后p的值是指向s2串中第一个9所在的位置,也就是p==&s2[9]。

执行p=strchr(s2,'6');之后,p的返回值是NULL。

(2)strcpy函数功能是串拷贝,strcat函数的功能是串联接。

所以:在执行strcpy(s3,s1);后,s3的值是"Stocktom,CA"在执行strcat(s3,",");后,s3的值变成"Stocktom,Ca,"在执行完strcat(s3,s2);后,s3的值就成了"Stocktom,Ca,March 5,1999"(3)函数strcmp(串1,串2)的功能是串比较,按串的大小进行比较,返回大于0,等于0或小于0的值以表示串1比串2大,串1等于串2,串1小于串2。

因此在调用函数strcmp(s1,s2)后,返回值是大于0的数(字符比较是以ascii码值相比的)(4)首先,我们要知道&s1[5]是一个地址,当放在函数strcmp中时,它就表示指向以它为首地址的一个字符串,所以在strcmp( &s1[5],"ton")中,前一个字符串值是"tom,CA",用它和"ton"比较,应该是后者更大,所以返回值是小于0的数。

(5)strlen是求串长的函数,我们先将s1,s2联接起来,值是"Stocktom,CAMarch5,1999",数一数有几个字符?是不是23个(空格也是一个)?所以返回值是23。

4、3解:所有的有效位移i的值如下:2,5,9。

算法NaveStrMatch(T,P)的返回值是第一个有效位移,因此是2。

二、算法设计题:解:算法如下:void StrInsert(char *S, char *T, int i){//将串T插入到串S的第i个位置上char *Temp;Temp=(char *)malloc(sizeof(char[Maxsize]));//设置一个临时串if(i<=strlen(S)){strcpy(Temp,&S[i]);//将第i位起以后的字符拷贝到临时串中strcpy(&S[i], T);//将串T拷贝到串S的第i个位置处,覆盖后面的字符strcat(S,Temp);//把临时串中的字符联接到串S后面free( Temp );}}//以下提供验证程序#include "string.h"#include "stdio.h"#include "malloc.h"#define Maxsize 50//假设静态顺序串的空间长度为100void StrInsert(char *S, char *T, int i);void main(){char A[Maxsize]="I am a boy.";char B[Maxsize]="very cool ";StrInsert( A,B,7);printf("%s",A);}void StrInsert(char *S, char *T, int i){//将串T插入到串S的第i 个位置上char *Temp;Temp=(char *)malloc(sizeof(char[Maxsize]));//设置一个临时串if(i<=strlen(S)){strcpy(Temp,&S[i]);//将第i位起以后的字符拷贝到临时串中strcpy(&S[i], T);//将串T拷贝到串S的第i个位置处,覆盖后面的字符strcat(S,Temp);//把临时串中的字符联接到串S后面}free( Temp );}//程序结束4.5解:算法如下:void StrDelete(char *S, int i ,int m){//串删除char Temp[Maxsize];//定义一个临时串if(i+m<strlen(S)){strcpy (Temp, &S[i+m]);//把删除的字符以后的字符保存到临时串中strcpy( &S[i],Temp);//用临时串中的字符覆盖位置i之后的字符}elseif(i+m>=strlen(S)&& i<strlen(S)){strcpy(&S[i],"\0");//把位置i的元素置为'\0',表示串结束}}//以下是验证程序#include "string.h"#include "stdio.h"#define Maxsize 40void StrDelete(char *S,int i, int m);void main(){char A[Maxsize]="Are you a very beautiful girl?";StrDelete( A, 40, 10);printf("\n%s",A);StrDelete( A, 10,15);printf("\n%s",A);StrDelete( A, 7,50);printf("\n%s\n",A);}void StrDelete(char *S, int i ,int m){char Temp[Maxsize];//定义一个临时串if(i+m<strlen(S)){strcpy (Temp, &S[i+m]);//把删除的字符以后的字符保存到临时串中strcpy( &S[i],Temp);//用临时串中的字符覆盖位置i之后的字符}elseif(i+m>=strlen(S)&& i<strlen(S)){strcpy(&S[i],"\0");//把位置i的元素置为'\0',表示串结束}}4.6解:HString 是指以动态分配顺序串为存储表示,其定义为:typedef struct {char *ch;int length;}HString/*要进行这个算法设计,我们考虑到字符串是以指针的形式表示的,匹配时,用双重循环来实现,外循环用于进行合法位移(即令一指针沿目标串的元素向右移位)内循环进行字符匹配(即令两指针同时沿着目标串和模式串的元素进行移动并比较。

相关文档
最新文档