数字反转(蓝桥杯)

数字反转

题目描述

给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见实例 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;
}
相关推荐
故事和你911 分钟前
洛谷-算法1-1-模拟与高精度4
开发语言·数据结构·c++·算法·蓝桥杯·动态规划
4ever.ov04 分钟前
Any模拟实现
c语言·数据结构·c++
漫随流水8 分钟前
c++编程:数组元素去重,逆序输出
数据结构·c++·算法
汉克老师10 分钟前
GESP2024年12月认证C++三级( 第一部分选择题(1-8))
c++·字符串·二进制·八进制·补码·gesp三级·gesp3级
m0_7167652314 分钟前
C++基础入门案例--通讯录管理系统详解
开发语言·c++·经验分享·笔记·学习·青少年编程·visual studio
宵时待雨21 分钟前
C++笔记归纳18:C++11
开发语言·c++·笔记
4ever.ov023 分钟前
仿muduo库one Thread one Loop式主从reactor模型高并发服务器项目日志
运维·服务器·c语言·c++·muduo
Book思议-24 分钟前
【数据结构】哈夫曼树的原理、实现与考研真题解析
数据结构·算法·霍夫曼树·哈夫曼树
Fuyo_111926 分钟前
C++入门基础
c++
qq_2837200528 分钟前
C++ STL 容器选型实战:vector/list/map/unordered_map 性能对比与选型指南
c++·list·map·性能对比