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 回文数:\n");    scanf("%d" , &val);        while (val)    {        sum = sum * 10 + val % 10;        val /= 10;    }        if(val == sum)    {        printf("是回文数\n");    }    else    {        printf("不是回文数\n");    }        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 回文数:\n");    scanf("%d" , &val);    m = val;  //这里千万不能写成m == val ,问题同上    while (m)    {        sum = sum * 10 + m % 10;          m/= 10;    }        if(val == sum)    {        printf("是回文数\n");    }    else    {        printf("不是回文数\n");    }        return 0;}//练习#include <stdio.h>int main() {    int val;    int fin = 0;    int n;    printf("请输入一个回文数:\n");    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("请输入一个回文数:\n");    scanf("%d", &val);    m = val;    while(m) {        fin = fin * 10 + m % 10;]        m /= 10;    }    if(val == fin) {        printf(val + "是一个回文数");    }else{        printf(val + "不是一个回文数!");    }}

我等你用尽了所有的哀伤;而你眼中却有我所不懂的凄凉。

C语言回文数

相关文章:

你感兴趣的文章:

标签云: