洛谷 P1307

P1307 数字反转

题目描述

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

输入输出格式

输入格式:

输入文件名为reverse.in 。

输入共1 行,一个整数 N。

 

输出格式:

输出文件名为reverse.out 。

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

 

输入输出样例

输入样例#1:
123
输出样例#1:
321
输入样例#2:
-380
输出样例#2:
-83

说明

数据范围

-1,000,000,000≤ N≤ 1,000,000,000 。

noip2011普及组第一题

题解

 1 #include<iostream>
 2 #include<cstring>
 3 #include<cstdio>
 4 using namespace std;
 5 
 6 int main()
 7 {
 8     int i,j;
 9     char a,b[99999999];
10     scanf("%c",&a);
11     if(a=='-'){
12         printf("-");
13         gets(b);
14         for(i=strlen(b)-1;i>=0;i--){
15             if(b[i]!='0'){
16                 j=1;
17             }
18             if(j){
19                 printf("%c",b[i]);
20             }
21         }
22     }
23     else{
24         gets(b);
25         for(i=strlen(b)-1;i>=0;i--){
26             if(b[i]!='0'){
27                 j=1;
28             }
29             if(j){
30                 printf("%c",b[i]);
31             }
32         }
33         printf("%c",a);
34     }
35     return 0;
36 }

 

posted @ 2017-07-21 14:27  深秋客  阅读(292)  评论(0编辑  收藏  举报