一道c语言题~ 拜托各位
判断是否为回文这样出来怎么会会判断123561为回文呢#include<stdio.h>#include<string.h>intmain(){chars[80];int...
判断是否为回文 这样出来 怎么会会判断 123561 为回文呢
#include <stdio.h>
#include <string.h>
int main()
{
char s[80];
int repeat, ri;
int mirror(char *p);
scanf("%d", &repeat);
getchar();
for(ri = 1; ri <= repeat; ri++){
gets(s);
if(mirror(s) != 0)
printf("YES\n");
else
printf("NO\n");
}
}
int mirror(char *p){
int n=strlen(p);
int t=1,i;
for(i=0;i<n;i++)
{
if(p[i]!=p[n-1-i])
{t=0;
break;
}
}
return t;
} 展开
#include <stdio.h>
#include <string.h>
int main()
{
char s[80];
int repeat, ri;
int mirror(char *p);
scanf("%d", &repeat);
getchar();
for(ri = 1; ri <= repeat; ri++){
gets(s);
if(mirror(s) != 0)
printf("YES\n");
else
printf("NO\n");
}
}
int mirror(char *p){
int n=strlen(p);
int t=1,i;
for(i=0;i<n;i++)
{
if(p[i]!=p[n-1-i])
{t=0;
break;
}
}
return t;
} 展开
1个回答
2015-06-27
展开全部
#include <stdio.h>
#include <string.h>
int main()
{
char s[80];
int repeat, ri;
int mirror(char *p);
scanf("%d", &repeat);
getchar();
for(ri = 1; ri <= repeat; ri++){
gets(s);
if(mirror(s) != 0)
printf("YES\n");
else
printf("NO\n");
}
}
int mirror(char *p){
int n=strlen(p);
int t=1,i;
for(i=0;i<n/2;i++)//<----------
{
if(p[i]!=p[n-1-i])
{t=0;
break;
}
}
return t;
}
追问
不好意思 这样子我跑出来 123561 还是 yes
而且我觉得 就算是 for(i=0;i<n;i++) 也没错啊 就是重复做了几步无用功而已
请问你这样跑出来对吗
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询