• 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来接收。

  • 相关阅读:
    Shell 脚本读取文件中的每行
    Linux中的内存管理机制
    CPU Cache 学习(一)
    linux系统层次(转)
    linux下的一些常用命令
    几个关于Linux进程fork()的题目
    GDB调试工具
    POSIX thread library 简介I
    Scheme Programming language II
    Google Chrome浏览器标签页之间的自动切换
  • 原文地址:https://www.cnblogs.com/anwcq/p/C_suanfa_huiwen.html
Copyright © 2020-2023  润新知