zoukankan      html  css  js  c++  java
  • C,C++回文字符串判断(字符串指针的用法)

    功能:输入一个字符串,判断是否为回文。

    主要锻炼指针的用法。

    1.C版

    #include<stdio.h>
    
    int main()
    {
        char he[100];
        char a;
        int i=0,flag=1;
        while((a=getchar())!='
    ')
        {
            he[i]=a;
            i++;
        }
        int n=i;
        for(i=0;i<n/2;i++)
        {
            printf("%c	%c
    ",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[]。

    当输入“ ”即回车时,跳出循环。

    2.C++版

    #include<iostream>
    #include<string.h>
    using namespace std;
    
    int main(void)
    {
        char *p="abcba";
        int n=strlen(p);
        bool flag=1;
        int i;
        for(i=0;i<n/2;i++)
        {
            cout<<p[i]<<"	"<<p[n-1-i]<<endl;
            if(p[i]!=p[n-1-i])
            {
                flag=0;
                cout<<"no"<<endl;break;
            }
        }
        if(flag==1)
             cout<<"yes"<<endl;
        return 0;
    }

    strlen()取长度


    3.C函数调用版

    #include<stdio.h>
    #include<string.h>
    
    int pp(char *p)
    {
        int n=strlen(p),i;
        //printf("%d",n);
        if(p==NULL)return -1;
        for(i=0;i<n/2;i++)
        {
           // printf("%c	%c
    ",p[i],p[n-1-i]);
            if(p[i]!=p[n-1-i])
            {
                return 0;
            }
        }
        return 1;
    }
    
    int main()
    {
        char *p="abcba";
        int a=pp(p);
        printf("%d",a);
    }

    pp()为一个int型函数,故返回一个int型的值,在主函数中通过声明一个int a来接收。

  • 相关阅读:
    BZOJ3932 [CQOI2015]任务查询系统
    数位DP专练
    Codeforces #669 div2
    Codeforces #670 div2
    P1450 [HAOI2008] 硬币购物
    P3172 [CQOI2015]选数
    比赛-Round 1 (12 Jul, 2018)
    “记计帐”需求分析
    一个程序员的哲学思考
    中国式大学——我们需要获得什么?
  • 原文地址:https://www.cnblogs.com/anwcq/p/C_suanfa_huiwen.html
Copyright © 2011-2022 走看看