回文是一个顺读和倒读都相同的字符串,如英文单词madam,noon等。设字符串采用堆分配存储,附件中的函数Palindrome 用于判断字符串是否为回文。要求:在程序空白处补全代码(标记为1、2、3),并在标记4处填写该算法的时间复杂度。

回文是一个顺读和倒读都相同的字符串,如英文单词madam,noon等。设字符串采用堆分配存储,附件中的函数Palindrome 用于判断字符串是否为回文。要求:在程序空白处补全代码(标记为1、2、3),并在标记4处填写该算法的时间复杂度。


参考答案和解析

相关考题:

●试题二阅读下列函数说明和C函数,将应填入(n)处的字句写在答题纸的对应栏内。【函数2.1说明】函数palindrome(char s[])的功能是,判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样时,称该字符串是回文字符串,例如:"LEVEL"是回文字符串,而"LEVAL"不是。【函数2.1】int palindrome(char s[]){char*pi,*pj;pi=s;pj=s+strlen(s)-1;while(pi<pj (1) ){pi++;pj--;}if( (2) )return -1;else return 0;}【函数2.2说明】函数f(char*str,char del)的功能是:将非空字符串str分割成若干个子字符串并输出,del表示分割时的标志字符。例如若str的值为"33123333435",del的值为"3",调用此函数后,将输出3个子字符串,分别为"12"、"4"和"5"。【函数2.2】void f(char*str,char del){int i ,j ,len;len=strlen(str);i=0;while(i<len){while( (3) )i++;/*忽略连续的标志字符*//*寻找从str[i]开始直到标志字符出现的一个子字符串*/j=i+1;while(str[j]!=del str[j]!=′\0′)j++;(4) =′\0′;/*给找到的字符序列置字符串结束标志*/printf(″%s\t″,str[i]);(5) ;}}

阅读下列函数说明和C函数,将应填入(n)处的字句写在对应栏内。【函数2.1说明】函数palindrome(char s[])的功能是,判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样时,称该字符串是回文字符串,例如:“LEVEL”是回文字符串,而“LEVAL”不是。【函数2.1】int palindrome( char s[ ] ){ char * pi, * pj;pi=s; pj=s+strlen(s)-1;while( pi<pj(1)){pi ++ ;pj --}if((2))return -1;else return 0;}【函数2.2说明】函数f(char * str,char del)的功能是:将非空字符串str分割成若干个子字符串并输出,del表示分割时的标志字符。例如若str的值为“33123333435”,del的值为“3”,调用此函数后,将输出3个子字符串,分别为“12”、“4”和“5”。【函数2.2】void f( char * str, char del){ int i ,j ,len;len = strlen (str)i=0;while(i < len) {while((3))i++; /*忽略连续的标志字符*//*寻找从str[i]开始直到标志字符出现的一个子字符串*/j=i+1;while(str[j] != del str[j] ! = '\0')j ++(4): '\0'; /*给找到的字符序列置字符串结束标志*/printf("%s\t",str[i]);(5);}}

如下哪个函数可以返回文本字符串所指定的引用()。 A、ColumnB、RowC、IndexD、Indirect

如下哪个函数表示返回文本字符串中的字符个数()。 A.substituteB.matchC.sumD.len

回文是指正读反读均相同的字符序列,如“abba”和“abdba”均是回文,但“good”不是回文。试写一个算法判定给定的字符向量是否为回文。(提示:将一半字符入栈)

请编写函数fun(),该函数的功能是判断字符串是否为回文,若是则函数返回1,主函数中输出YES:否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。例如:字符串LEVEL是回文,而字符串123312就不是回文。注意;部分源程序已存在文件test26_.cpp中。请勿修改主函数main和其他函数中的任何内容,仅在函数fun的花括号中填写若干语句。文件test26_2.cpp的内容如下:include<iostream.h>include<stdio.h>define N 80int fun(char*str){}void main(){char s[N];cout<<"Enter a string:"<<endl;gets{s);cout<<"\n\n";puts(s);if(fun(s))cout<<"YES\n";elsecout<<"NO\n";}

请补充函数fun(),该函数的功能是判断一个数是否为回文数。当字符串是回文时,函数返回字符申:yes!,否则函数返回字符串:no!,并在主函数中输出。所谓回文即正向与反向的拼写都一样,例如:abcba。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<string.h>include<stdio.h>char *fun(char*str){char *p1,*p2;int i, t=0;p1=str;p2=str+strlen(str)-1;for (i=0;【 】;i++)if(【 】){t=1;break;}if (【 】)return("yes!");elsereturn("no!");}main(){char str[50];printf("Input;");scanf("%s",str);printf("%s\n",fun(str));}

函数check()用来判断字符串s是否是“回文”(顺读和倒读都一样的字符串称为“回文”,如abcba)。若是回文,函数返回值为1;否则返回值为0。请完成此函数的定义。注意:部分源程序已存在考生文件夹的文件PROC7.cpp中。请勿修改主函数和其他函数中的任何内容,仅在函数check()的花括号中填写若干语句。文件PROC7.cpp的内容如下://PROC7.cppinclude<iostream>include<string>using namespace std;int check(char*s);int main(){char str[100],*p;cout<<"Input your string!";cin>>str;p=str;cout<<"The result is:"<<check(p)<<end1;}int check(char*s){// * * * * + * * *}

给定程序中,函数fun的功能是:判断形参s所指字符串是否是”回文”(Palindrome),若是,函数返回值为1;不是,函数返回值为0。”回文”是正读和反读都一样的字符串:不区分大小写字母)。例如,LEVEL和Level是”回文”,而LEVLEV不是”回文”。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK.1.C中。不得增行或删行,也不得更改程序的结构!

写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。【函数1说明】函数palindrome(char s[])的功能是:判断字符串s是否为回文字符串。若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样时,则可称该字符串是回文字符串。例如,“LEVEL”是回文字符串,而“LEVAL”不是。【函数1】int palindrome(char s[]{char *pi, *pj;pi=s; pj=s+strlen(s)-1;while(pi<pj(1)){pi++; pj--;}if((2))return-1;else return 0;}【函数2说明】函数f(char *str, char del)的功能是:将非空字符串str分割成若干个子字符串并输出,del表示分割时的标志字符。例如,若str的值为“33123333435”,del的值为“3”,调用此函数后,将输出三个子字符串,分别为“12”、“4”和“5”。【函数2】void f(char *str, char del){int i,j, len;len=strlen(str);i=0;while(i<len){While((3)) i++; /*忽略连续的标志字符*//*寻找从str[i]开始直到标志字符出现的一个子字符串*/j=i+1;while(str[j]!=del str[j]!='\0')j++;(4)='\0'; /*给找到的字符序列置字符串结束标志*/printf("%s\t",str[i]);(5);}}

以下叙述中错误的是( )。A.gets函数用于从终端读人字符串B.getehar函数用于从磁盘文件读人字符C.fputs函数用于把字符串输出到文件D.fwrite函数用于以二进制形式输出数据到文件

请补充函数proc(),该函数的功能是判断一个数是否为素数。该数是素数时,函数返回字符串:“yes!”,否则函数返回字符串:“no!”,并在主函数中输出。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。试题程序:

7:03:07这个时间是1一个很奇特的时间,它不管正读还是倒读都是“70307”,我们称之为“回文时间”。请问一天中,有多少个这样的“回文时间”。A.360B.600C.660D.684

试题3本程序中,函数fun的功能是判断字符串是否是回文,若是回文,则返回1,主函数中输出YES;否则,函数返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。例如,字符串LEVEL是回文,而123312就不是回文。请在函数fun的花括号中填入你编写的若干语句。(注意:不改动程序的结构,不得增行或删行。)#include stdio.h#define N 80int fun ( char *str){}main(){ char s[N];printf(“Enter a string : ”) ;gets (s) ;printf(“\n\n”) ;puts (s) ;if (fun (s))printf (“YES\n”) ;elseprintf (“N0\n”) ;nono ();}nono (){/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件.*/int i;FILE *rf, *wf ;char s[N] ;rf = fopen (“bc.in”,“r”) ;wf = fopen (“bc.out”,“w”) ;for ( i=0; i10; i++ ){ fscanf (rf, “%s”,s ) ;if (fun ( s ))fprintf (wf, “%s YES\n”, s ) ;Elsefprintf(wf, “%s NO\n”, s ) ;}fclose (rf) ;fclose (wf) ;}

下面哪个函数用于返回文本字符串中的字符数()。A、LEN()B、RIGHT()C、LOOKUP()D、MONTH()

所谓“回文数”是指读一个自然数,从正方向读和反方向读,结果是一样的。例如:646,1551,891232198都认为是回文数。编一个程序,输入一个正整数,判定它是否为回文数。当输入的数为0时,则退出程序,否则继续循环执行程序。

以下字符串中,是回文字符串的是()。A、abcbaB、12321C、1221D、abcdef

关于回文字符串,描述正确的是()。A、回文字符串的长度一定是奇数B、回文字符串的长度一定是偶数C、回文字符串的长度可以是奇数也可以是偶数D、回文字符串只要求首尾字母是一样的

回文字符串算法,不可以判断一串汉字字符串是否是回文。

多选题以下字符串中,是回文字符串的是()。AabcbaB12321C1221Dabcdef

判断题回文字符串算法,不可以判断一串汉字字符串是否是回文。A对B错

单选题关于回文字符串,描述正确的是()。A回文字符串的长度一定是奇数B回文字符串的长度一定是偶数C回文字符串的长度可以是奇数也可以是偶数D回文字符串只要求首尾字母是一样的

多选题回文字符串是正反都一样的英文字符串,那么下面不是回文字符串的应为()。AXYZZBXYZXYZCXXMXXDMMNMMN

多选题回文字符串是正反都一样的英文字符串,那么下面不属于回文字符串的是()。AaabbBaabbccddCABCABCDAABBB

单选题用于返回文本字符串中从指定位置开始的指定数目的字符的函数是().ARIGHTBMIDCLENDLEFT

问答题所谓“回文数”是指读一个自然数,从正方向读和反方向读,结果是一样的。例如:646,1551,891232198都认为是回文数。编一个程序,输入一个正整数,判定它是否为回文数。当输入的数为0时,则退出程序,否则继续循环执行程序。

多选题回文字符串的非递归算法:用系统函数解决的方式,需要用到哪些系统函数()。AstrcpyBstrcatCstrcmpDstrrev