使用C语言实现该程序
时间: 2024-12-02 20:28:51 浏览: 11
在C语言中,你可以使用循环和条件语句来实现判断回文数的功能。由于C语言没有内置的字符串操作,我们需要手动转换整数为字符数组来进行比较。下面是一个基本的C语言函数实现:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPalindrome(int x) {
if (x < 0) {
return false;
}
int original_num = x; // 保存原始数,避免溢出影响判断
int reversed_num = 0; // 反转后的数
int temp;
while (original_num != 0) {
temp = original_num % 10; // 取最后一位数字
reversed_num = reversed_num * 10 + temp; // 向前添加反转位
original_num /= 10; // 移除最后一位并减小原始数
}
return original_num == reversed_num; // 比较原数和反转后的数是否相等
}
int main() {
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++) {
int num;
scanf("%d", &num);
if (isPalindrome(num)) {
printf("yes\n");
} else {
printf("no\n");
}
}
return 0;
}
```
在这个程序中,`isPalindrome()` 函数接受一个整数作为输入,然后依次取出每一位数字,反转后存储在 `reversed_num` 中。最后,函数比较原数和反转后的数是否相等。在 `main()` 函数里,读取输入并调用该函数打印结果。
阅读全文