小lagi @ 2020-01-02 18:27:32
#include<stdio.h>
int main()
{
int N;
scanf("%d",&N);
int n;
if(N>0)
{
n=N;
while(n>0)
{
if(n%10!=0)
printf("%d",n%10);
n/=10;
}
}
else
if(N<0)
{
n=-N;
printf("-");
while(n>0)
{
if(n%10!=0)
printf("%d",n%10);
n/=10;
}
}
else
printf("%d",N);
return 0;
}```
by NIMNIM @ 2020-01-02 18:35:26
@小lagi 举个例子 30560 你会把中间那个0省掉 正确输出是6503 你的是653 就是说省0只能省掉一开始的连续的0
by NIMNIM @ 2020-01-02 18:36:51
@小lagi 你可以用一个judge,judge=true,就是一开始的连续的0,就省掉。一旦没有连续的0了,就令judge=false,不省了
by tangrunxi @ 2020-01-02 18:47:13
@小lagi 就相当于是如果有0零去掉以后就break;
by tangrunxi @ 2020-01-02 18:48:19
就相当于是如果判断是否有连续的0,零去掉以后就break;
by 小lagi @ 2020-01-02 19:53:42
嗯嗯,懂了,谢谢大佬们