所谓回文数就是将一个数从左向右读与从右向左读是一样的,例如,121和1331都是回文数。编写一个函数实现求正整数n以内的回文数。 c语言大学内容
时间: 2023-11-22 11:52:11 浏览: 66
以下是实现求正整数n以内的回文数的C语言代码:
```c
#include <stdio.h>
// 判断是否是回文数
int is_palindrome(int n) {
int temp = n, reverse = 0;
while (temp != 0) {
reverse = reverse * 10 + temp % 10;
temp /= 10;
}
return n == reverse;
}
// 求正整数n以内的回文数
void palindrome_numbers(int n) {
printf("回文数有:\n");
for (int i = 1; i <= n; i++) {
if (is_palindrome(i)) {
printf("%d ", i);
}
}
printf("\n");
}
int main() {
int n;
printf("请输入n:");
scanf("%d", &n);
palindrome_numbers(n);
return 0;
}
```
在上述代码中,`is_palindrome`函数用于判断一个数是否是回文数,`palindrome_numbers`函数用于求正整数n以内的回文数。在`palindrome_numbers`函数中,使用for循环遍历1到n之间的所有数,如果是回文数,就输出。最后在`main`函数中,读入n,并且调用`palindrome_numbers`函数。