www.ylrr.net > 编写一个递归函数tEst判断字符串是否为回文,如是...

编写一个递归函数tEst判断字符串是否为回文,如是...

bool test(char s[],int firstInd,int lastInd){ if(lastInd 评论0 0 0

#include <stdio.h> int huiwen(char *s,int n) {if(n<2)return 1; if(*s!=*(s+n-1))return 0; return huiwen(s+1,n-2); } int main() {char s[200]; int i,k; scanf("%d%*c",&k); while(k--) {gets(s); for(i=0;s[i];i++); printf("%s\n",huiwen(s,i)?"Yes!":"No!"); //运行完了才加上的"!" } return 0; }

#include <stdio.h> #define SIZE 50 int isPalindrome(char str[]); int elementSize=0; static int i=0; int main() { int j=0,result; char element,str[SIZE]; printf("请输入字符串,以回车结束:\n"); /*以下用循环结构读入字符数组的元素,防止了因

#include <stdio.h>#include <string.h>#define IS_PALINDROME 1#define IS_NOT_PALINDROME 0#define STR_YES "yes"#define STR_NO "no"#define MAX_SIZE 80 int isPalindrome(char str[]); int main() { char str[MAX_SIZE + 1]; printf(

先看是几位数.假设是4位int a,a1,a2,a3输入回文数scanf("%d",a);a1=a%10;a2=a/10%10;a3=a/100%10a4=a/1000if(a1==a4&&a2==a3){return 1;}else{return 2;}差不多就是这样,

#include main() { char str[100]; int i,j,leap; gets(str); if (strlen(str) printf("not\n"); else for (i=0,j=strlen(str)-1;i {if (str[i]!=str[j]) leap=0; break; } if (leap==0) printf("no\n"); else printf("yes\n"); }

1、测长,2、循环,分别从头和尾,依次取单个字符比较.相同就继续比下去.直到结束.

#include <stdio.h>#include <string.h>int huiwen(char *a);int main(){ char a[100]; scanf("%s",a); if(huiwen(a)) printf("yes,%s is huiwen",a); else printf("no,%s not huiwen",a);}int huiwen(char *a){ int i,j; for (i=0,j=strlen(a)-1;i<j;i++,j--) if(a[i]!=a[j])

输出语句有问题,1,程序对的情况下,引号里应该有数据类型吧.2,有数据类型的话,你输出的也只是字符串的第21个元素,不是一个字符串.你让指出来,没让改,那我的任务完成了吧. 另外,好像少了一个分类判断的分支语句吧. 我把思路说一下,你自己改下.循环条件应该是一个从头到尾,一个从尾到头.输出函数用puts(str),改不出来我明天给你改.

bool isHui(char* str,int len) { return len} bool isHui(char* str) { return isHui(str,strlen(str)); }

网站地图

All rights reserved Powered by www.ylrr.net

copyright ©right 2010-2021。
www.ylrr.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com