请用【c语言】帮我写一段判断一个整数是否为回文数的代码,要求用while语句实现
时间: 2024-11-07 09:13:21 浏览: 50
在 C 语言中,你可以通过将整数转换为字符串并比较原始数字和反转后的字符串来判断一个整数是否为回文数。以下是使用 while 循环的示例代码:
```c
#include <stdio.h>
#include <string.h> // 引入 strlen 函数
int isPalindrome(int num) {
char str[100]; // 存储整数转成的字符串
int originalNum = num; // 保留原始数值
int reversed = 0;
// 将整数转换为字符串
while (num != 0) {
str[reversed++] = num % 10 + '0'; // 取余并加10进制字符
num /= 10;
}
// 检查反转后的字符串是否等于原字符串
str[reversed] = '\0'; // 添加终止符
while (originalNum != reversed) { // 当两个指针指向的数字不相等时
if (str[--originalNum] != str[reversed]) {
return 0; // 不是回文数,返回0
}
--reversed;
}
return 1; // 是回文数,返回1
}
int main() {
int number;
printf("请输入一个整数:");
scanf("%d", &number);
if (isPalindrome(number)) {
printf("%d 是一个回文数。\n", number);
} else {
printf("%d 不是一个回文数。\n", number);
}
return 0;
}
```
这个代码首先将整数转换成字符串,然后同时从两端向中心比较每一位,如果发现不匹配则结束判断,否则就是回文数。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![-](https://img-home.csdnimg.cn/images/20241231044901.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)