• C语言回文数


    当年看郝斌讲解的C语言,回文数,哈哈,后续会分享我当年跟着他学习的数据结构代码

    //2013-7-21    10:54
    //功能:如何求一个回文数? (84  while用法举例)
    //知识点:c语言中除法(/)和求余(%)的用法     及while用法
    //技能: 求回文数的核心代码掌握     学会试数,像计算机一样去执行,别管为什么(看懂一个看不懂的程序的不二法门)
    
    
    /*# include <stdio.h>
    
    int main()
    {
        int val;  //val存放一个回文数
        int sum = 0;
        
        printf("please input one 回文数:
    ");
        scanf("%d" , &val);
    
        
    
        while (val)
        {
            sum = sum * 10 + val % 10;
            val /= 10;
        }
        
        if(val == sum)
        {
            printf("是回文数
    ");
        }
        else
        {
            printf("不是回文数
    ");
        }
        
        return 0;
    } 运行结果均为:  不是回文数
     原因:  用户键入的数字存放在val中,但程序最终的val已经改变,
     所以原来键入数字逆序后的数字sum肯定不与已经改变后的val相等
     
     改正:提供一个变量m, 将键入的数字val赋值给m ,让m 去执行程序最终生成sum,
           而初次键入的数字扔存放在val里,不变
           然后两者sum,val 进行大小比较   */
    # include <stdio.h>
    
    int main()
    {
        int val;  //val存放一个回文数
        int sum = 0;
        int m;
        
        printf("please input one 回文数:
    ");
        scanf("%d" , &val);
    
        m = val;  //这里千万不能写成m == val ,问题同上
        while (m)
        {
            sum = sum * 10 + m % 10;
              m/= 10;
        }
        
        if(val == sum)
        {
            printf("是回文数
    ");
        }
        else
        {
            printf("不是回文数
    ");
        }
        
        return 0;
    }
    
    
    //练习
    #include <stdio.h>
    int main() {
        int val;
        int fin = 0;
        int n;
        printf("请输入一个回文数:
    ");
        scanf("%d",&val);
        n = val;
        while(n) {
            fin = fin * 10 + n % 10;
            n /= 10;
        }
        if(val == fin) {
            printf(val + "是回文数");
        }
        else {
            printf(val + "不是回文数");
        }
        return 0;
    }
    //练习2
    #include <stdio.h>
    void main() {
        int val;
        int fin = 0;
        int m;
        printf("请输入一个回文数:
    ");
        scanf("%d", &val);
        m = val;
        while(m) {
            fin = fin * 10 + m % 10;]
            m /= 10;
        }
        if(val == fin) {
            printf(val + "是一个回文数");
        }else{
            printf(val + "不是一个回文数!");
        }
    }
  • 相关阅读:
    实时需要分析
    .NET 单元测试的艺术&单元测试之道C#版
    代码演示C#各2.0到8.0版本[FK,2.0-4.8.0]
    微软Visual Studio Code 0.8.0发布,新增多种主题
    ASP.NET 5 Beta 7 版本
    软件开发设计原则
    Immutable(不可变)集合
    使用Hystrix提高系统可用性
    微软发布 Windows Server 2016 预览版第三版,开发者要重点关注Nano Server
    Akka.NET v1.0 已发布,支持Mono
  • 原文地址:https://www.cnblogs.com/gqs92/p/6778246.html
Copyright © 2020-2023  润新知