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

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; 
 } 

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