大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
输入格式
一个整数 N
输出格式
一个整数,表示反转后的新数。
输入输出样例
输入 #1
123
输出 #1
321
输入 #2
-380
输出 #2
-83
思路:
将一个数各个数位上的数进行翻转,得到一个新数,注意如果是负数,反转之后的数还是负数,除非给定的原数为零,反转后最高位数字不应为零,具体操作见代码。
代码:
//P1307 数字反转
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
char s[15];
cin >> s;
int len = strlen(s), flag = 0;
if(len == 1) cout << s << endl;
else if(s[0] != '-')
{
for(int i = len - 1; i >= 0; i--)
{
if(flag == 0 && s[i] == '0') continue;
cout << s[i];
flag = 1;
}
}
else if(s[0] == '-')
{
cout << "-";
for(int i = len - 1; i > 0; i--)
{
if(flag == 0 && s[i] == '0') continue;
cout << s[i];
flag = 1;
}
}
return 0;
}
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/189904.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...