回文串 c语言

回文串:即是正读反读都一样的字符串

如何用c语言实现回文串的判定

如果是回文串输出true 如果不是 输出false

#include<stdio.h>
#include<string.h>
#include<assert.h>
char * my_strlwr(char * str) //定义一个my_strlwr函数

{
assert(str); //str的非空性
char *ret = str; //定义一个ret保存最初的str
while(*str != '\0') //判断字符串是否结束
{
if((*str >= 'A')&&(*str <= 'Z'))//判断当前啊字符是否是 大写字母
{
*str = *str +32; //根据ascii码表将其转化为小写字母
str++;
}
else
str++;
}
return ret; //返回该字符串数组的首地址
}



int main ()
{
    int i,j;
 int len;
 char S1[100];//输入字符串
 char S2[100];//倒序字符串
 scanf("%s",S1);
my_strlwr(S1);
 len = strlen(S1);
 for(i=len-1,j=0;i>=0;i--,j++)//利用循环进行倒序输入
 {
  S2[j] = S1[i];
 }
 for(i=0,j=0;i<len;i++,j++)
 {
  if(S1[i]!=S2[i])
  {
   printf("false");//遍历过程中如果有不想同 则结束
   break;
  }
  else if(i==len-1)
  {
   printf("true");
  }
 }
 return 0;
}

关于assert 的作用与使用方法的介绍 见下一篇

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值