C 程序 检查数字是否为回文数

  • Post category:C

下面是“C程序检查数字是否为回文数”的完整使用攻略。

C程序检查数字是否为回文数

什么是回文数?

回文数是指正着写和反着写都一样的数字。例如,12321就是回文数。

程序设计

设计思路

  • 读入一个整数 num。
  • 将 num 的各位数分离出来,存在数组 a 中。
  • 判断 a 是否是回文数组。

代码实现


#include <stdio.h>
#define MAX_N 100 // 数组最大长度

int a[MAX_N]; // 存储将输入数字的各个数位单独存储到数组中的数据

int get_num_bit(int num) {
  int n = 0;
  while (num) {
    a[n++] = num % 10;
    num /= 10;
  }
  return n;
}

int is_palindrome(int n) {
    int len = get_num_bit(n);
    for(int i = 0; i < len/2; i++){
        if(a[i] != a[len-i-1]){
            return 0;
        }
    }
    return 1;
}

int main(){
    int num, bit;

    scanf("%d", &num); //从终端获取输入
    if (is_palindrome(num)) {
        printf("%d is a palindrome number!\n", num);
    } else {
        printf("%d is not a palindrome number!\n", num);
    }

    return 0;
}

如何使用

  1. 在本地编写保存完整代码后,进入C语言编译器环境,编写Makefile并进行编译。
  2. 在终端输入数字进行测试。

示例说明

输入数字:123321

输出:123321 is a palindrome number!

输入数字:123456

输出:123456 is not a palindrome number!

以上是本程序的完整使用攻略,你可以根据这些步骤完成测试和使用。