#include <stdio.h> #include <stdlib.h> int main(void) { int n; scanf("%d", &n); int ans = 0; while (n) { ans = ans * 10 + n % 10; n /= 10; } printf("%d", ans); return 0; }
# python字符串操作,但是这个整数的倒序并不包括符号位,需要做一个判断 # 另外,倒序之后高位不能为零 ns = input() if ns[0] == '-': print(ns[0] + ns[len(ns)-1:0:-1].lstrip('0')) # lstrip('x') 去除字符串左边的指定字符 # len(s)获取字符串的长度,直接获取len(s)位置的字符是越界的,但是不会报错,因为字符串最后面会跟一个"\0"字符 # "\0"字符表示字符串的结束,从这个字符开始读取,只能读到空 else: t = ns[::-1].lstrip('0') print(t if t else '0') # 输入是0会被过滤掉,需要判断一下
import java.math.BigInteger; import java.util.*; public class Main { private static final int N_MAX = 105; private static StringBuilder sb = new StringBuilder(); public static void main(String[] args) { Scanner sc = new Scanner(System.in); int p = sc.nextInt(); if (p < 0) { sb.append("-"); }; solve(Math.abs(p)); System.out.println(sb.toString()); } private static boolean flag = false; private static void solve(int n) { if (n !=0) { if (n%10 != 0 || flag) { sb.append(n % 10); flag = true; } solve(n / 10); } } }
#include <bits/stdc++.h> using namespace std; int main() { string n; cin >> n; if(n[0] == '-') { cout << "-"; n = n.substr(1,n.length()); } reverse(n.begin(), n.end()); //反转字符串 cout << atoi(n.c_str()); //将string型强制转换成int型 return 0; }
n = input() if n[0] == '-': print('-'+str(int(n[len(n):0:-1]))) #先强制转换成int防止数字0开头 else: print(int(n[::-1]))
#include <iostream> using namespace std; int reverse(int x, int cur){ if(x==0){ return cur; } return reverse(x/10, 10*cur+x%10); } int main(){ int n; while(cin >> n){ int flag = 1; if(n<0){ flag = -1; n = -n; } int result = flag*reverse(n, 0); cout << result << endl; } return 0; }
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int n=sc.nextInt(); String s=""; if(n<0){ s+="-"; } getResult(s,Math.abs(n),true); } public static void getResult(String s,int n,boolean isFirst){ if(n==0){ System.out.println(s); return ; } int t=n%10; if(t==0&&isFirst){ getResult(s,n/10,true); }else{ s+=t; getResult(s,n/10,false); } } }
#include <stdio.h> void reverse(int x, int* res){ if (x == 0) { return; } *res = *res * 10 + x % 10; reverse(x / 10, res); } int main() { int x, sign; scanf("%d", &x); if (x < 0) { sign = -1; x = -x; } else { sign = 1; } int res = 0; /* while (x != 0) { res = res * 10 + x % 10; x = x / 10; } */ int* pres = &res; reverse(x, pres); printf("%d", sign * res); return 0; }
#include <iostream> using namespace std; void reverse(int num, bool flag) { if (flag) cout << num % 10; else if (num % 10) { cout << num % 10; flag = true; } if (num /= 10) reverse(num, flag); } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int n; cin >> n; if (n < 0) { cout << "-"; n = -n; } reverse(n, false); }