如何编写一个函数判断一个正整数是否为回文数?尽量用c++初学者的语言。并找出【1,500】以内的所有回文数。
时间: 2024-04-29 20:23:15 浏览: 12
1. 判断一个正整数是否为回文数的函数:
```c
int isPalindrome(int num){
int temp = num, reverse_num = 0;
while(temp > 0){
reverse_num = reverse_num * 10 + temp % 10;
temp /= 10;
}
if(reverse_num == num){
return 1; //是回文数
}
else{
return 0; //不是回文数
}
}
```
2. 找出【1,500】以内的所有回文数的代码:
```c
#include <stdio.h>
int isPalindrome(int num);
int main(){
printf("所有回文数为:\n");
for(int i=1; i<=500; i++){
if(isPalindrome(i)){
printf("%d ", i);
}
}
return 0;
}
int isPalindrome(int num){
int temp = num, reverse_num = 0;
while(temp > 0){
reverse_num = reverse_num * 10 + temp % 10;
temp /= 10;
}
if(reverse_num == num){
return 1; //是回文数
}
else{
return 0; //不是回文数
}
}
```
输出结果为:
```
所有回文数为:
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 101 111 121 131 141 151 161 171 181 191 202 212 222 232 242 252 262 272 282 292 303 313 323 333 343 353 363 373 383 393 404 414 424 434 444 454 464 474 484 494
```