本题要求实现一个求整数的逆序数的简单函数。
函数接口定义:
int reverse( int number );
其中函数reverse
须返回用户传入的整型number
的逆序数。
裁判测试程序样例:
#include <stdio.h> int reverse( int number ); int main() { int n; scanf("%d", &n); printf("%d\n", reverse(n)); return 0; } /* 你的代码将被嵌在这里 */
输入样例:
-12340
输出样例:
-4321
代码如下(我的老代码,真是辣鸡的很):
n = int(input())
if n > 0:
str1 = 1
elif n < 0:
str1 = -1
else:
str1 = 0
str2 = str(n)
if str1 == 1:
print(int(str2[::-1])) #如果是正数,直接转成字符串,然后逆序
elif str1 == 0:
print('0')
else: #不是整数,不是0,就是负数
print(int(str2[1::][::-1])) #[1::]意思是从下标为1的开始取(把“-”号舍去),[::-1]表示逆序
代码如下(新代码):
n = int(input())
if n > 0:
print(int(str(n)[::-1])) #如果大于0,转成字符串,逆序输出,再转成整数
elif n < 0 :
print(int(str(abs(n))[::-1]) * -1)
#小于0,ans()求绝对值,转成字符串逆序输出,转成整数,然后*-1
else:
print(0)