7-1 判断回文字符串

7-1 判断回文字符串7-1判断回文字符串(15分)输入一个字符串,判断该字符串是否为回文。回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。输入格式:输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。输出格式:输出在第1行中输出字符串。如果它是回文字符串,在第2行中输出Yes,否则输出No。输入样例1:level输出样例1:levelYes输入样例2:1+2=2+1=输出样例2:1+2=2+1=No双指针法#include<s

大家好,又见面了,我是你们的朋友全栈君。

7-1 判断回文字符串 (15分)

输入一个字符串,判断该字符串是否为回文。回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。
输入格式:

输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。
输出格式:

输出在第1行中输出字符串。如果它是回文字符串,在第2行中输出Yes,否则输出No。
输入样例1:

level

输出样例1:

level
Yes

输入样例2:

1 + 2 = 2 + 1 =

输出样例2:

1 + 2 = 2 + 1 =
No

解法1:前后指针对比

#include<stdio.h>
#include<string.h>
int main(){ 
   
	
	char a[85];
	gets(a);
	int h=0,t=strlen(a)-1,flag=1;
	while(h<t){ 
   
		if(a[h++]!=a[t--]) flag=0;
	}
    printf("%s\n",a);
	if(flag) printf("Yes");
	else printf("No"); 
	return 0;
} 

解法2:折半对比

#include<stdio.h>
#include<string.h>
int main(){ 
   
	
	char a[85];
	gets(a);
	int len=strlen(a),flag=1;
	for (int i = 0; i < strlen(a)/2; i++) { 
   
	    if(a[i] != a[len-i-1]){ 
   
	    	 flag = 0;
	    	 break;
	    }  
	}
  printf("%s\n",a);
	if(flag) printf("Yes");
	else printf("No"); 
	return 0;
} 

解法3:翻转原串

import java.util.Scanner;

public class Main { 
   
    public static void main(String[] args) { 
   


        Scanner scanner = new Scanner(System.in);
        StringBuffer buffer = new StringBuffer();
        String str = scanner.nextLine();
        buffer.append(str);
        System.out.println(str);
        if(str.equals(buffer.reverse().toString())) { 
     //将字符串翻转,和原串比较
            System.out.println("Yes");
        }
        else{ 
   
            System.out.println("No");
        }


    }

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139842.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月29日 上午7:46
下一篇 2022年5月29日 上午7:46


相关推荐

  • Pytest(6)重复运行用例pytest-repeat[通俗易懂]

    Pytest(6)重复运行用例pytest-repeat[通俗易懂]前言平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来。自动化运行用例时候,也会出现偶然的bug,可以针对单个用例,

    2022年7月29日
    13
  • python基础知识入门_python新手学院

    python基础知识入门_python新手学院1变量和简单数据类型变量命名格式:变量名=“赋值”1.1变量使用规范使用变量时,需要遵守一些规则。违反这些规则将引发错误。~变量名只能包含数字、字母、下划线。变量名不能以数字开头以及不

    2022年8月5日
    7
  • DeepLink的实现原理「建议收藏」

    DeepLink的实现原理「建议收藏」前言之前我们又是看源码又是研究动画,今天分享一个比较简单的技术点:DeepLink。DeepLink,深度链接技术,主要应用场景是通过Web页面直接调用Android原生app,并且把需要的参数通过Uri的形式,直接传递给app,节省用户的注册成本。简单的介绍DeepLink概念之后,我们看一个实际的例子:朋友通过京东分享给我一个购物链接:于是我通过微信打开了这条链接:…

    2022年6月23日
    68
  • Jupyter Notebook 和 pycharm

    Jupyter Notebook 和 pycharmnbsp nbsp nbsp nbsp 集成开发环境 IDE 是提供给程序员和开发者的一种基本应用 用来编写和测试软件 一般而言 IDE 由一个编辑器 一个编译器 或称之为解释器 和一个调试器组成 通常能够通过 GUI 图形界面 来操作 根据维基百科的描述 Python 是一种广泛使用的高级的 通用的 解释的 动态编程语言 Python 是一种相当古老且流行的语言 它是开源的 常被应用于网站开发 利用 Dj

    2026年3月27日
    2
  • Silverlight网站实例资源收集(1)

    Silverlight网站实例资源收集(1)Silverlight做的试用VisualStudio2008http://www.challenges.com.cn/ 全功能的相册http://msbluelight-0.agappdom.net/e1/d/72193/13304799/63356644800/0.vpFl7uJ79e1H4xExhhjCX701HlA/zziframehtml2zz.html#%2f%2

    2022年10月18日
    6
  • CodeBlocks 中文乱码解决方法「建议收藏」

    CodeBlocks 中文乱码解决方法「建议收藏」Windows下,按照安装步骤一步步来就行,由于之前不知道怎么设置错误,然后就出现中文乱码问题,出现找了很多方法,但都不合适,最后自己一点点摸索,无非就是尽量需找默认设置,步骤如下:(1)按照下图去选择(2)settings->globalcompilersettings点击一下resetdefaults,确定,就可以了!

    2022年7月14日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号