在顺序串中,参数ch,ch1和ch2均是字符型,编写下列算法。 (1)将串r中所有其值为ch1的字符换成ch2的字符。 (2)将串r中删除其值等于ch的所有字符。 (3)从串r1中第index个字符起求出首次与串r2相同的子串的起始位置。

在顺序串中,参数ch,ch1和ch2均是字符型,编写下列算法。 (1)将串r中所有其值为ch1的字符换成ch2的字符。 (2)将串r中删除其值等于ch的所有字符。 (3)从串r1中第index个字符起求出首次与串r2相同的子串的起始位置。


参考答案和解析
char ch1 = 'b'; char ch2 = 'U';

相关考题:

试题四(共 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; kS-length; k++) /* 通过覆盖子串T进行删除 */S-ch[ (4) ] = S-ch[k];S-length = (5) ; /* 更新S的长度 */}else break; /* 串S中不存在子串T*/}}

函数String(n,"str")的功能是( )。A.把数值型数据转换为字符串B.返回由n个字符组成的字符串C.从字符串中取出n个字符D.从字符串中第n个字符的位置开始取子字符串

函数调用strcat(strcpy(str1,str2) ,str3) 的功能是( )。A.将字符串str1复制到字符串str2中后再连接到字符串str3之后B.将字符串str1连接到字符串str2之后再复制到字符串str3之后C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中

函数String(3,”str”)的功能是( )A.把数值型数据转换成字符串B.返回有3个字符串组成的字符串C.从字符串中第3个字符D.从字符串中第3个字符的位置开始取字符串

函数String(n,字符串)的功能是( )。A.把数值型数据转换为字符串B.返回由n个字符组成的字符串C.从字符串中取出n个字符D.从字符串中第n个字符的位置开始取子字符串

阅读以下说明和流程图,填补流程图中的空缺(1)~(5),将解答填入对应栏内。【说明】下面流程图的功能是:在已知字符串A中查找特定字符串B,如果存在,则输出B串首字符在A串中的位置,否则输出-1。设串A由n个字符A(0),A(1),…,A(n-1)组成,串B由m个字符B(0),B(1),…,B(m-1)组成,其中n≥m>0。在串A中查找串 B的基本算法如下:从串A的首字符A(0)开始,取子串A(0)A(1)…A(m-1)与串B比较;若不同,则再取子串A(1)A(2)…A(m)与串B比较,依次类推。例如,字符串“CABBRFFD”中存在字符子串“BRF”(输出3),不存在字符子串“RFD”(输出-1)。在流程图中,i用于访问串A中的字符(i=0,1,…,n-1),j用于访问串B中的字符(j=0,1,…,m-1)。在比较A(i)A(i/1)…A(i+m-1)与B(0)B(1)…B(m-1)时,需要对 A(i)与B(0)、A(i+1)与B(1)、…、A(i+j)与B(j)等逐对字符进行比较。若发现不同,则需要取下一个子串进行比较,依此类推。【流程图】

规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的。号之外,将串中其他*号全部删除。在编写函数时.不得使用C语言提供的字符串函数.

请教:2016年计算机二级考试C++模拟试题简答题3答案 请编写函数fun,其功能是:将s所指字符串中ascii值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。

阅读下列说明和流程图,将应填入(n)处。[流程图说明]流程图1-1描述了一个算法,该算法将给定的原字符串中的所有前导空白和尾部空白都删除,但保留非空字符之间的空白。例如,原字符串“ File Name ”,处理后变成“File Name”。流程图1-2、流程图1-3、流程图1-4分别详细描述了流程图1-1中的框A,B,C。假设原字符串中的各个字符依次存放在字符数组ch的各元素ch(1),ch(2),…,ch(n)中,字符常量KB表示空白字符。流程图1-1的处理过程是:先从头开始找出该字符串中的第一个非空白字符ch(i),再从串尾开始向前找出位于最末位的非空白字符ch(j),然后将ch(i),…,ch(j)依次送入 ch(1),ch(2),…中。如果原字符串中没有字符或全是空白字符,则输出相应的说明。在流程图中,strlen是取字符串长度函数。[问题]在流程图1-1中,判断框P中的条件可表示为:i>(5)

函数String(n,"str")的功能是( )。A.把数值型数据转换为字符串B.返回由n个字符组成的字符串C.从字符串中取出n个字符D.从字符串中第n个字符的位置开始取字符串

阅读下列说明和C函数,填补C函数中的空缺,将解答填入答案纸的对应栏目内。 【说明】 字符串是程序中常见的一种处理对象,在字符串中进行子串的定位、插入和删除是常见的运算。 设存储字符串时不设置结束标志,而是另行说明串的长度,因此串类型定义如下: typedef struct ﹛ Char *str; //字符串存储空间的起始地址 int length; //字符串长 int capacity; //存储空间的容量 ﹜SString;【函数1说明】 函数indexStr(S,T,pos)的功能是:在S 所表示的字符串中,从下标pos开始查找T所表示字符串首次出现的位置。方法是:第一趟从S中下标为pos、T中下标伟0的字符开始,从左往右逐个对于来比较S和T的字符,直到遇到不同的字符或者到达T的末尾。若到达T的末尾,则本趟匹配的起始下标pos为T出现的位置,结束查找;若遇到了不同的字符,则本趟匹配失效。下一趟从S中下标pos+1处的字符开始,重复以上过程。若在S中找到T,则返回其首次出现的位置,否则返回-1。 例如,若S中的字符为伟students ents,T中的字符串伟ent,pos=0,则T在S中首次出现的位置为4。 【C函数1】 int index Str(SString S ,SString T,int pos) ﹛ int i,j: i (S.length1||T.length1||pos+T.length-1) return-1; for(i=pos,j=0;iS.length jT.length;)﹛ if (S.str[i]==T.str[j])﹛ i++;j++; ﹜ else﹛ i=( 1 );j=0 ﹜ ﹜ if ( 2 )return i -T.length; return-1; ﹜ 【函数2说明】 函数 eraseStr(S,T}的功能是删除字符串S中所有与T相同的子串,其处理过程为: 首先从字符串 S 的第一个字符(下标为0)开始查找子串T,若找到〈得到子串在S中的起始位置),则将串 S 中子串T之后的所有字符向前移动,将子串T覆盖,从而将其删除,然后重新开始查找下一个子串T,若找到就用后面的宇符序列进行覆盖,重复上述过程,直到将S中所有的子串T删除。 例如,若字符串 S为 12ab345abab678、T为ab。第一次找到ab时(位置为2),将345abab678前移,S 中的串改为12345abab678 ,第二次找到ab时(位置为 5);将ab678前移,S中的串改为12345ab678,第三次找到ab时(位置为5);将678前移 ,S中的串改为12345678 。 【C函数2】 Void eraseStr(SString*S,SStringT) ﹛ int i; int pos; if (S-length1||T.length1||S-lengthT.length) return; Pos=0; for(;;)﹛ //调用indexStr在S所表示串的pos开始查找T的位置 Pos=indexStr( 3 ); if(pos=-1) //S所表示串中不存在子串T return; for(i=pos+T.length;iS-length;i++) //通过覆盖来删除自串T S-str[( 4 )]=S-str[i]; S-length=( 5 ); //更新S所表示串的长度 ﹜ ﹜

函数调用“streat(strcpy(str1,str2),str3)”的功能是 ______。A.将字符串str1复制到字符串str2中后再连接到字符串str3之后B.将字符串str1连接到字符串str2中后再复制到字符串str3之后C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中

函数调用“strcat(strcpy(strl,str2),str3)”的功能是( )A.将字符串strl复制到字符串str2中后再连接到字符串str3之后B.将字符串strl连接到字符串str2中后再复制到字符率str3之后C.将字符串str2复制到字符串strl中后再将字符串str3连接到字符串strl之后D.将字符串str2连接到字符率strl之后再将字符串strl复制到字符串str3中

以下关于字符串的叙述中,正确的是 ( )。A.字符串属于线性的数据结构B.长度为0字符串称为空白串C.串的模式匹配算法用于求出给定串的所有子串D.两个字符串比较时,较长的串比较短的串大

阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。[说明]下面流程图的功能是:在给定的两个字符串中查找最长的公共子串,输出该公共子串的长度L及其在各字符串中的起始位置(L=0时不存在公共字串)。例如,字符串"The light is not bright tonight"与"Tonight the light is not bright"的最长公共子串为"he light is not bright",长度为22,起始位置分别为2和10。设A[1:M]表示由M个字符A[1],A[2],…,A[M]依次组成的字符串;B[1:N]表示由N个字符B[1],B[2],…,B[N]依次组成的字符串,M≥N≥1。本流程图采用的算法是:从最大可能的公共子串长度值开始逐步递减,在A、B字符串中查找是否存在长度为L的公共子串,即在A、B字符串中分别顺序取出长度为L的子串后,调用过程判断两个长度为L的指定字符串是否完全相同(该过程的流程略)。[流程图]

对字符串处理函数strcmp()描述正确的是()A、字符串1等于字符串2,函数返回值等于0B、字符串1大于字符串2,函数返回值等于1C、字符串1小于字符串2,函数返回值等于-1D、不能使用关系运算符“==”来比较两个字符串,只能用strcmp()函数来处理

函数String(n,"strsdfsdfsdf")的功能是()A、把数值型数据转换为字符串B、返回由n个"s"字符C、从字符串"strsdfsdfsdf")中取出前n个字符D、从字符串中第n个字符的位置开始取子字符串

函数String(3,”str”)的功能是()A、把数值型数据转换成字符串B、返回有3个字符串组成的字符串C、从字符串中第3个字符D、从字符串中第3个字符的位置开始取字符串

数据结构里,关于字符串函数strcmp()描述错误的是()。A、函数功能是比较两个字符串的大小。B、字符串1等于字符串2,函数返回值等于trueC、字符串1大于字符串2,函数返回值是1。D、字符串1小于字符串2,函数返回值是-1。

串是由有限个字符构成的连续序列,串长度为串中字符的个数,子串是主串中字符构成的有限序列。

子串在主串中的位置指的是该子串的最后一个字符在主串中的位置。

函数String(n,"str")的功能是()。A、把数值型数据转换为字符串B、返回由n个字符组成的字符串C、从字符串中取出n个字符D、从字符串中第n个字符的位置开始取子字符串

函数调用strcat(strcpy(str1,str2),str3)的功能是()A、将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后B、将字符串str1复制到字符串str2中后再连接到字符串str3之后C、将字符串str1复制到字符串str2中后再复制到字符串str3之后D、将字符串str2连接到字符串str1中后再将字符串str1复制到字符串str3中

判断题串是由有限个字符构成的连续序列,串长度为串中字符的个数,子串是主串中字符构成的有限序列。A对B错

单选题数据结构里,关于字符串函数strcmp()描述错误的是()。A函数功能是比较两个字符串的大小。B字符串1等于字符串2,函数返回值等于trueC字符串1大于字符串2,函数返回值是1。D字符串1小于字符串2,函数返回值是-1。

多选题以下关于字符串函数的描述中,正确的是()Aappend函数用于在已有的字符串末尾添加新的内容Binsert函数的作用是在字符串的某个位置插入一个字符CsetCharAt函数的作用是将String或StringBuffer字符串的某个字符串替换Dreplace函数的作用是替换一段子串 E delete函数用语删除整个字符串

单选题一个子串在包含它的主串中的位置是指()。A子串的最后那个字符在主串中的位置B子串的最后那个字符在主串中首次出现的位置C子串的第一个字符在主串中的位置D子串的第一个字符在主串中首次出现的位置

单选题函数String(n,"strsdfsdfsdf")的功能是()A把数值型数据转换为字符串B返回由n个s字符C从字符串strsdfsdfsdf)中取出前n个字符D从字符串中第n个字符的位置开始取子字符串