C++/C回文字符串的实例详解

判断输入的字符串是不是回文字符串,正反读一样。

.C版

#include<stdio.h>

int main()
{
  char he[100];
  char a;
  int i=0,flag=1;
  while((a=getchar())!='\n')
  {
    he[i]=a;
    i++;
  }
  int n=i;
  for(i=0;i<n/2;i++)
  {
    printf("%c\t%c\n",he[i],he[n-1-i]);
    if(he[i]!=he[n-1-i])
    {
      printf("no");break;
    }
  }
  if(flag==1)
  {
    printf("yes");
  }
  return 0;
}

getchar()函数依次获取一个输入,并赋给char型变量a,再通过a赋给char型数组he[]。

当输入“\n”即回车时,跳出循环。

C++版:

#include <iostream>
 using namespace std;

 int ishuiwen(char *p)
 {
  int len=strlen(p);
  int flag=1;
  for(int i=0;i<len/2;++i)
  {
   if(p[i]!=p[len-i-1])
   {
    flag=0;
    break;
   }
  }
  return flag;
 }


 int main()
 {
  char p[100];
  while(gets(p)){
 cout<<ishuiwen(p)<<endl;
}
cout<<endl;
  return 0;
 }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

02-07 06:27
查看更多