1,c语言程序设计 回文串 求解急

int main() int n; scanf("%d",&n); for(int i=0;i<n;i++) char word[300]; scanf("%s",word); int len=strlen(word); bool flag=true; for(int j=0;j<=len/2;j++) if(word[i]!=word[len-1-n]) flag=false; break; } } if(flag) printf("yes\n"); else printf("no\n"); } return 1;}

c语言程序设计 回文串 求解急

2,输入一个字符串判断是否是回文字符串请教一下

yon(int i++,int j--,char sz[11]); 有问题
#include <stdio.h>#include <string.h> void main() char a[20]; int i,j,d; gets(a); d = j=strlen(a); for(i=0;i<d;i++)//帮你改了下,人用两个循环来做啥?有没有想过两个循环所循环的次数是怎么样的? j--; if(a[i]==a[j]) printf("yes\n"); break; } if(a[i]!=a[j]) printf("no\n"); break; } }}

输入一个字符串判断是否是回文字符串请教一下

3,判断是否是回文字符串int iscyclearraychar str若是输出1否则为

int fun(int low, int high, char *str, int length) if (length == 0 || length == 1) return 1; if (str[low] != str[high]) return 0; return fun(low+1, high-1, str, length-2);}引用自http://blog.csdn.net/cbs612537/article/details/8217425
int fun(char str[]){ int l,i; for(l=strlen(str)-1,i=0;i

判断是否是回文字符串int iscyclearraychar str若是输出1否则为

4,回文字符串递归

#include&lt;stdio.h&gt; #include&lt;string.h&gt; int main() { int i=0,n,k=0; char a[20],*p,*q; scanf("%s",a); n=strlen(a); p=a; q=p+n-1; while(i&lt;(n/2+1)&amp;&amp;q&gt;p) if(*p==*q) { k++;i++; p++; q--; } if(k==n/2) printf("Yes\n"); else printf("No\n"); system("pause"); return 0; } 这是对你的简化版。错误之处一一道来: 1,while语句q&gt;p有错误,因为其后的p,q一直未变。 2,while中i&lt;n多余,只需到n/2+1即可。 3,if语句应该是字符比较 *(p+i)==*(q-i) 4,if语句 { k++; i++; } 必须合在一起,不然i是不变的。 5,if语句,p,q没有变。所以while中只是i&lt;n有效 6,最后判断n%2取余没有比较。

5,编程回文字符串 c语言

12345678910111213141516171819202122232425 inthuiwen(char*s) char*p = s; while(*p) p++;//找到结束符\0的位置。 p--;//\0的前一个字符,就是字符串的最后一个字符。 while(s<p) if(*s != *p) return0;//发现不同,不是回文。 s++; p--;//二者向中间移动。 } return1;//到相遇后一直相同,是回文。} intmain() chars[100]; scanf("%s",s);//输入字符串。 if(huiwen(s))//判断是否回文并输出结果。 printf("%s是回文字符串\n",s); else printf("%s不是回文字符串\n",s); return0; }
你把judger改成我的这样就行了。int judger(char a[]) int n=0,i,j; char *pstar; char *pend; n=strlen(a); pstar=a; pend=(pstar+n-1); for(; pstar < pend;pstar++,pend--) if(*pstar!=*pend) return 0; return 1;}

6,C语言 判断回文字符串

int fun( char str[] ) int i,j,n;n=strlen(str);for(i=0,j=n-1;i<=(n-1)/2;i++,j--)if(str[i]!=str[j]) break;if(i>j) return 1;return 0;}void main() char a[80]; gets(a); if ( fun(a)==1 ) printf( "回文\n"); else printf("非回文\n");}
#include<iostream.h>#include<cstring>int fun(char *str) int len,half; len=strlen(str); half=len/2; for(int i=0;i<half;i++) if(str[i]!=str[--len]) break; if(i>=half) return 1; else return 0;}void main() cout<<"please input a string:"<<endl; cin.getline(string,1024); if(fun(string)) cout<<"回文字符串"<<endl; else cout<<"不是回文字符串"<<endl;}

7,回文字符串

判断一个字符串是否回文,可以先比较第一个字符和最后一个字符是否相同,不同则不是回文,相同则比较第二个和倒数第二个,以此类推,直到比较到中间两个(字符串长为偶数)或中间一个(字符串长为奇数)时,如果仍相同,则为回文
50660 zxl0714 1351 Accepted 44K 15MS G++ 0.39K 2007-04-19 17:59:37 #include <stdio.h>#include <string.h>int main( ) int i, n, l; char data[ 100 ]; while ( scanf("%d", &n) != EOF && n ) while ( n-- ) scanf("%s", data); l = strlen( data ); for ( i = 0; i < l / 2; i++ ) if ( data[ i ] != data[ l - i - 1 ] ) printf("No\n"); break; } if ( i == l / 2 ) printf("Yes\n"); } } return 0;}
10位和千位相同个位于万位相同就这个思路
下次问问题一定要注明是用什么语言。。。。。。。。。。。这次也要注明。。。。
?

文章TAG:文字  字符串  c语言  c语言程序设计  回文字符串  回文串  求解急  
下一篇