TraveltTibet @ 2023-04-20 20:45:57
//给定一个整数
//N,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,
//即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例 2)。
#include<stdio.h>
int main()
{
char a[20]={0},b,i=0;
int flag=1,star=0;
scanf("%c",&b);
while(b!= '\n')
{
a[i++]=b;
scanf("%c",&b);
}
i--;
if(a[0]=='0' && i==0)
{
printf("0");
return 0;
}
while(i>=0 && flag )
{
if(a[i] =='0')
{
i--;
}
else
flag = 0;
}
if(a[0] == '-')
{
printf("%c",'-');
star=1;
}
while (i>=star)
{
printf("%c",a[i--]);
}
return 0;
}
by codejiahui @ 2023-04-20 21:03:06
@TraveltTibet
#include <iostream>
using namespace std;
void f(string s)
{
if (s[0] == '-')
{
cout << '-';
bool flag = false;
for (int i = s.length() - 1;i >= 1;i--)
{
if (s[i] != '0') flag = true;
if (flag) cout << s[i];
}
cout << endl;
}
else
{
bool flag = false;
for (int i = s.length() - 1;i >= 0;i--)
{
if (s[i] != '0') flag = true;
if (flag) cout << s[i];
}
cout << endl;
}
}
int main()
{
string num;
cin >> num;
if (num == "0") cout << 0 << endl;
else f(num);
return 0;
}
关注一下吧
谢谢 thx
谢谢 thx
上面两行的格式不一样
by TraveltTibet @ 2023-04-20 21:08:47
@codejiahui ? 没懂
by codejiahui @ 2023-04-20 21:27:57
@TraveltTibet 直接