(a)回文数字是一个按正向或者反向阅读都相同的数字。例如:5321235就是一个数字回文。使用这些信息创建一个名为rvs( )的递归函数,接收一个整型数值作为参数,如果它是一个数字回文则返回1,否则就返回0。 (b) 编写一个C语言程序,调用(a)中编写的函数rvs ( )。从键盘输入数据,判断是否是回文数字。
时间: 2024-01-24 07:17:29 浏览: 113
(a) 代码实现如下:
```python
def rvs(num):
if len(str(num)) <= 1:
return 1
elif str(num)[0] == str(num)[-1]:
return rvs(str(num)[1:-1])
else:
return 0
```
(b) C语言程序实现如下:
```c
#include <stdio.h>
#include <string.h>
int rvs(int num);
int main()
{
int num;
printf("请输入一个整数:");
scanf("%d", &num);
if (rvs(num))
printf("%d是回文数字\n", num);
else
printf("%d不是回文数字\n", num);
return 0;
}
int rvs(int num)
{
char str[20];
sprintf(str, "%d", num);
int len = strlen(str);
if (len <= 1)
return 1;
else if (str[0] == str[len - 1])
return rvs(atoi(str + 1), len - 2);
else
return 0;
}
```
其中,`sprintf`函数可以将整数类型转换为字符串类型,`atoi`函数可以将字符串类型转换为整数类型。
阅读全文