zoukankan      html  css  js  c++  java
  • C 既是完全平方又是回文的数

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    void toChars(char str[],int num);
    int isHui(char str[]);
    int isSquare(int num);
    
    void main()
    {
        int num=100;
        while((num++)<1000)
        {
    
            char str[20];
            int i=0;
            //初始化
            for(; i<20; i++)
            {
                str[i]=0;
            }
    
            int flagSquare=isSquare(num);
            toChars(str,num);
            //printf(str);
            int flagHui=isHui(str);
            //printf("%d",flagHui);
            if(flagHui && flagSquare){
                printf("%4d,",num);
    
            }
    
        }
    
    }
    
    void toChars(char str[], int num)
    {
        int p=num;
    
        int i=0;//数组的下标  //注意 函数呃逆局部变量要手动赋初值
        while(p!=0)
        {
            str[i++]=p%10+48;
            //如果一个char型变量c是数字字符 转为数字  c-'0'
            //对一个数字 8 转为'8' 只需加上48
            p=p/10;
        }
    
    }
    
    int isHui(char str[])
    {
        int last=0;//用于标记末位有效位下标
        //找到末尾有效位
        //对了  前面已经将数组所有元素初始化为空字符 (ASCII为0)
        while(str[last]!=0)
        {
            last++;
        }//循环结束时 last所指向的字符ASCII恰为0
        last--;
    
        int i=0;
        int flag=1;
        while(  i<last  )
        {
            if( str[i]!=str[last] )
            {
                flag=0;
            }
            i++;
            last--;
        }
        return flag;
    
    
    }
    
    int isSquare(int num)
    {
        int i=1;
        int flag=0;
        if(num==1)
        {
            flag=1;
    
        }
        else
        {
            for(; i<num/2; i++)
            {
                if(num==(i*i))
                {
                    flag=1;
    
                }
    
            }
        }
        return flag;
    
    }
  • 相关阅读:
    servlet
    grep命令
    sort排序命令
    shell脚本面试
    查看远端的端口是否通畅3个简单实用案例!
    mail命令
    linux系统优化的方法
    shell数组
    shell函数介绍语法说明及基本例子
    循环结构的多个控制命令对比与实际案例
  • 原文地址:https://www.cnblogs.com/cart55free99/p/2987400.html
Copyright © 2011-2022 走看看