• 回文词


    题意大概:

    输入一个只含大写字母和数字的字符串,判断这个字符串的性质:

    1只是镜像

    2只是回文

    3既是镜像又是回文

    4两个都不是


    回文:正着读反着读都一样

    镜像:

    A 的镜像A

    B           无

    C    

    D

    E   3

    F

    G

    H   H

    I   I

    J  L

    K  

    L   J

    M M

    N  

    O O

    P

    Q

    R

    S 2

    T T

    U U

    V V

    W W

    X X

    Y Y

    Z 5

    1 1

    2 S

    3 E

    4

    5 Z

    7

    8

    9

    源代码:

    #include <iostream>
    #include<string>
    using namespace std;
    char* a="A   3  HIL JM O   2TUVWXY51SE Z  8 ";
    string c[4]={"is not a palindrome","is a regular palindrome ","is a mirrored string","is a mirrored palindrome"};
    char r(char hh)
    {
        if(isalpha(hh))
        return a[hh-'A'];
        else
            return a[hh-'0'+25];
    }
    int main()
    {
        string b;
        cin>>b;
        int len=b.size();
        int x=1,y=1;
        for(int i=0;i<=((len+1)/2)-1;i++)
        {
            if(b[i]!=b[len-1-i])
                x=0;
            if(r(b[i])!=b[len-1-i])
                y=0;
        }
        if(x==0&&y==0)
            cout<<c[0]<<endl;
        else if(x==1&&y==0)
            cout<<c[1]<<endl;
        else if(x==0&&y==1)
            cout<<c[2]<<endl;
        else
            cout<<c[3]<<endl;
        return 0;
    }



    知识点:
    1

    char a;

    isalpha(a);    头文件:#include<ctype.h>

    用于判断a是否为英文字母,如果a是英文字母返回正整数,不是返回0



    2

    两个字符型字母(大写或小写),两个字符型整数相减,结果为数字。

    '5'-'1'=5

    'Z'-'A'=25

  • 相关阅读:
    怎么看待MYSQL的性能
    java dom4j 读写XML
    cas4.2的安装
    java websocket
    解决openresty http客户端不支持https的问题
    开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别
    SpringMVC框架的学习(一):初步认识
    Spring框架: 理解为它是一个管理对象的创建,依赖,销毁的容器。
    Springmvc如何进行异常处理
    Springmvc:注解有哪些。
  • 原文地址:https://www.cnblogs.com/iamjuruo/p/7470978.html
Copyright © 2020-2023  润新知