1101: 逆序数字(函数专题)
题目描述
输入一个正整数n,计算n的逆序数m,输出m与n的和。要求程序定义一个inverse()函数和一个main()函数,inverse()函数接收一个整数值,返回这个数中数字逆序后的结果值。例如,给定数7631,函数返回1367 。
int inverse(int n)
{
//计算并返回n的逆序数字
}
输入
一个正整数n,输入保证计算结果在int范围内。
输出
输出一个整数,n与n的逆序数的和。输出占一行。
样例输入 Copy
1780
样例输出 Copy
2651
#include <stdio.h>
#include <math.h>
int inverse(int n);
int main()
{
int x, n, sum = 0;
scanf("%d", &x);
n = inverse(x);
sum = n + x;
printf("%d", sum);
return 0;
}
int inverse(int n)
{
int temp, sum, i, digit, len, temp1, len1;
len = 0;
len1 = 0;
sum = 0;
temp = n;
while (n > 0)
{
n /= 10;
len1++;
}
len = len1;
for (i = 1; i <= len1; i++)
{
digit = temp % 10;
digit = digit * pow(10, len - 1);
temp /= 10;
temp1 = temp;
sum += digit;
len = 0;
while (temp > 0)
{
temp /= 10;
len++;
}
temp = temp1;
/* code */
}
return sum;
}