c语言

c语言怎么用for循环判断回文数

小亿
255
2024-03-02 13:10:28
栏目: 编程语言

回文数是指一个数字从左到右和从右到左读都是一样的,例如1221、12321等。可以使用for循环来判断一个数字是否是回文数,具体步骤如下:

  1. 将输入的数字保存在变量num中。
  2. 将num赋值给另一个变量temp,用于后续比较。
  3. 将num逆序排列,保存在变量reverse_num中。
  4. 使用for循环逐个比较num和reverse_num对应位置的数字是否相等,若有不相等的情况则不是回文数,直接返回false。
  5. 若所有位置数字相等,则表示是回文数,返回true。

下面是一个示例代码:

#include <stdio.h>

int isPalindrome(int num) {
    int temp = num;
    int reverse_num = 0;
    
    // 反转数字
    while (temp > 0) {
        reverse_num = reverse_num * 10 + temp % 10;
        temp /= 10;
    }
    
    // 判断是否是回文数
    while (num > 0) {
        if (num % 10 != reverse_num % 10) {
            return 0; // 不是回文数
        }
        num /= 10;
        reverse_num /= 10;
    }
    
    return 1; // 是回文数
}

int main() {
    int num;
    printf("请输入一个数字:");
    scanf("%d", &num);
    
    if (isPalindrome(num)) {
        printf("%d 是回文数\n", num);
    } else {
        printf("%d 不是回文数\n", num);
    }
    
    return 0;
}

通过上面的代码,可以判断一个数字是否是回文数。

0
看了该问题的人还看了