数字反转(蓝桥杯)

数字反转

题目描述

给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见实例 2)。

输入描述

输入共 1 行,一个整数 −109≤N≤109

输出描述

输出共 1 行,一个整数,表示反转后的新数。

输入输出样例

示例 1

输入
c 复制代码
123
输出
c 复制代码
321

示例 2

输入
c 复制代码
-380
输出
c 复制代码
-83

c++

c 复制代码
#include<bits/stdc++.h>
using namespace std;

int main()
{
  string a;
  cin>>a;
  int flag=0;
  if(a[0]=='-')
  {
    a.erase(a.begin());//删除'-'号
    flag=1;//标记
  }
  reverse(a.begin(),a.end());//反转字符串
  while(a[0]=='0')
    a.erase(a.begin());//删除反转后首位的0
  if(flag==1)
  	a='-'+a;//还原'-'号
  cout<<a;
  return 0;
}

C语言

c 复制代码
#include<stdio.h>
#define ll long long int
int main()
{
  ll a=0;
  scanf("%lld",&a);
  ll b=0;
  while(a!=0)
  {
    b=b*10+a%10;//取出每一位(从个位开始取),再乘10,当然,取出个位时,不用乘10,所以b初始等于0
    a/=10;
  }
  printf("%lld",b);
  return 0;
}
相关推荐
CPUOS20102 小时前
嵌入式C语言高级编程之MVC设计模式
c语言·设计模式·mvc
jolimark2 小时前
C语言存在的问题及Zig语言如何改进,差异对比全在这
c语言·内存管理·系统编程·类型系统·zig语言
自信150413057592 小时前
重生之从0开始学习c++之模板初级
c++·学习
leobertlan2 小时前
好玩系列:用20元实现快乐保存器
android·人工智能·算法
青梅橘子皮2 小时前
C语言---指针的应用以及一些面试题
c语言·开发语言·算法
历程里程碑3 小时前
2. Git版本回退全攻略:轻松掌握代码时光机
大数据·c++·git·elasticsearch·搜索引擎·github·全文检索
极客智造3 小时前
深度解析 C++ 类继承与多态:面向对象编程的核心
c++
_深海凉_4 小时前
LeetCode热题100-有效的括号
linux·算法·leetcode
零号全栈寒江独钓6 小时前
基于c/c++实现linux/windows跨平台获取ntp网络时间戳
linux·c语言·c++·windows
CSCN新手听安6 小时前
【linux】高级IO,以ET模式运行的epoll版本的TCP服务器实现reactor反应堆
linux·运维·服务器·c++·高级io·epoll·reactor反应堆