C语言判断字符串是否回文三种方法实例

 更新时间:2024年03月19日 09:59:50   作者:脉牛杂德  
回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的,下面这篇文章主要给大家介绍了关于C语言判断字符串是否回文的三种方法,文中通过代码介绍的非常详细,需要的朋友可以参考下

回文的概念:顺读和倒读是一样的

比如:12321

           madam

           上海自来水来自海上  

1.法一

#include<stdio.h>
#include<string.h>
int main()
{
	char s[100] ;
	gets(s);
	int start = 0, end = strlen(s) - 1;
	int flag = 1;
	while (start <= end && 1 == flag)
	{
		flag = (s[start] == s[end]);
		start++;
		end--;
	}
	if (1 == flag)
         printf("%s是回文",s);
	else 
         printf("%s不是回文",s);
	return 0;
}

2.法二

#include<stdio.h>
#include<string.h>
int main()
{
	char s[100] ;
	gets(s);
	int start = 0, end = strlen(s) - 1;
	int flag = 1;
	while (start <= end && 1 == flag)
	{
		flag = (s[start++] == s[end--]);
	}
	1 == flag ? printf("%s是回文", s) : printf("%s不是回文", s);
	return 0;
}

3.法三

#include<stdio.h>
#include<string.h>
int main()
{
	char s[100] ;
	gets(s);
	int start = 0, end = strlen(s) - 1;
	int flag = 1;
	while (start <= end && flag == (s[start++] == s[end--]));
	
	1 == flag ? printf("%s是回文", s) : printf("%s不是回文", s);
	return 0;
}

总结 

到此这篇关于C语言判断字符串是否回文三种方法的文章就介绍到这了,更多相关C语言判断字符串是否回文内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C++实现LeetCode(48.旋转图像)

    C++实现LeetCode(48.旋转图像)

    这篇文章主要介绍了C++实现LeetCode(48.旋转图像),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • C++ Boost PropertyTree解析INI文件详解

    C++ Boost PropertyTree解析INI文件详解

    Boost PropertyTree库不仅可以解析JSON,XML格式,还可以直接解析INI格式文件。这篇文章就是为大家介绍一下如何通过Boost PropertyTree解析INI文件,需要的可以参考一下
    2022-01-01
  • C++设计模式之装饰模式

    C++设计模式之装饰模式

    这篇文章主要介绍了C++设计模式之装饰模式,装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能,需要的朋友可以参考下
    2014-10-10
  • C++数据模型应用在QML委托代理机制中

    C++数据模型应用在QML委托代理机制中

    这篇文章主要介绍了在QML委托代理机制中使用C++数据模型,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Cocos2d-x UI开发之CCControlSwitch控件类使用实例

    Cocos2d-x UI开发之CCControlSwitch控件类使用实例

    这篇文章主要介绍了Cocos2d-x UI开发之CCControlSwitch控件类使用实例,本文代码中含大量注释讲解了CCControlSwitch控件类的使用,需要的朋友可以参考下
    2014-09-09
  • STL容器之vector源码详细解读

    STL容器之vector源码详细解读

    这篇文章主要介绍了STL容器之vector源码详细解读,vector的数据安排和array和类似,它们的主要差别在于空间的运用和灵活性,array是静态空间,一旦配置了就不能改变,需要的朋友可以参考下
    2024-01-01
  • 深入详解C编写Windows服务程序的五个步骤

    深入详解C编写Windows服务程序的五个步骤

    本篇文章介绍了,使用C编写Windows服务程序的五个步骤的详细概述。需要的朋友参考下
    2013-05-05
  • C++中智能指针unique_ptr的实现详解

    C++中智能指针unique_ptr的实现详解

    智能指针本质上并不神秘,其实就是 RAII 资源管理功能的自然展现而已,这篇文章主要为大家详细介绍了如何实现 C++中智能指针的 unique_ptr,需要的可以了解下
    2024-01-01
  • include包含头文件的语句中,双引号和尖括号的区别(详解)

    include包含头文件的语句中,双引号和尖括号的区别(详解)

    下面小编就为大家带来一篇include包含头文件的语句中,双引号和尖括号的区别(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • C语言嵌入informix基础入门示例讲解

    C语言嵌入informix基础入门示例讲解

    这篇文章主要介绍了C语言嵌入informix基础方法,大家参考使用
    2013-11-11

最新评论