判断输入的字符串是否是回文
#include<stdio.h>intmain(void){inti,j,n;chara[80];i=0;while((a[i]=getchar())!='\n')i+...
#include<stdio.h>
int main(void)
{
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
n=i;
for(i=0;i<n;i++){
for(i=n-1;j>=0;j--)
if(a[i]==a[j])
printf("是回文\n");
}
printf("不是回文\n");
return 0;
}
新手,实在不知道哪儿有问题啊啊 展开
int main(void)
{
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
n=i;
for(i=0;i<n;i++){
for(i=n-1;j>=0;j--)
if(a[i]==a[j])
printf("是回文\n");
}
printf("不是回文\n");
return 0;
}
新手,实在不知道哪儿有问题啊啊 展开
5个回答
展开全部
首先把for(i=n-1;j>=0;j--),这儿应该是j=n-1吧?另外我觉得整个逻辑应该改下
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
{
i++;
}
a[i]='\0';
n=i;
for(i=0;i<n;i++){
// for(j=n-1;j>=0;j--) //这儿是j
if(a[i]!=a[n-1-i])
break;
}
if(i==n)
printf("是回文\n");
if(i<n)
printf("不是回文\n");
return 0;
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
{
i++;
}
a[i]='\0';
n=i;
for(i=0;i<n;i++){
// for(j=n-1;j>=0;j--) //这儿是j
if(a[i]!=a[n-1-i])
break;
}
if(i==n)
printf("是回文\n");
if(i<n)
printf("不是回文\n");
return 0;
展开全部
你不觉得你的{}都不是对应的吗?
再检查一下吧。
再试试
再检查一下吧。
再试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成下面这样
#include<stdio.h>
int main(void)
{
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n'&&i<80)
i++;
a[i]='\0';
n=i;
for(i=0;i<n/2;i++){
if(a[i]==a[n-1-i])
continue;
else break;
}
if(i==n/2+1)printf("是回文\n");
else printf("不是回文\n");
return 0;
}
#include<stdio.h>
int main(void)
{
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n'&&i<80)
i++;
a[i]='\0';
n=i;
for(i=0;i<n/2;i++){
if(a[i]==a[n-1-i])
continue;
else break;
}
if(i==n/2+1)printf("是回文\n");
else printf("不是回文\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main(void)
{
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
n=i;
for(i=0;i<n/2;i++){
if(a[i]==a[n-i-1]) continue;
else break;
}
if(i>=n/2) printf("是回文\n");
else printf("不是回文\n");
return 0;
}
int main(void)
{
int i,j,n;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
n=i;
for(i=0;i<n/2;i++){
if(a[i]==a[n-i-1]) continue;
else break;
}
if(i>=n/2) printf("是回文\n");
else printf("不是回文\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main(void)
{
int i,j,n;
bool bol = true;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
n=i;
for(i=0;i<n;i++)
{
for(i=n-1;j>=0;j--)
if(a[i]!=a[j])
bol = false;
}
if (bol)
{
printf("是回文\n");
return 0;
}
printf("不是回文\n");
return 0;
}
int main(void)
{
int i,j,n;
bool bol = true;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
n=i;
for(i=0;i<n;i++)
{
for(i=n-1;j>=0;j--)
if(a[i]!=a[j])
bol = false;
}
if (bol)
{
printf("是回文\n");
return 0;
}
printf("不是回文\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询