給一個不多於5位數的正整數,要求:
1.求出它是幾位數;
2.分別輸出每一位數;
3.按逆序輸出各位數字。
(我只用if語句寫的代碼如下,看看那些錯了,非常感謝!)
#include<stdio.h>
int main()
{
int x,i,j,k,z,y,s;
scanf("%d",&x);
if(x>99999&&x<0)
printf("It is error");
else
{
s=x/10;
i=x%10;
if(s==0)
printf("%d\n",i);
else
{
j=x/100;
if(j==0)
{
printf("%d\n",j);
printf("%d%d\n",i,j);
}
else
{
k=x/1000;
if(k==0)
{
printf("%d\n",k);
printf("%d%d\n",i,j,k);
}
else
{
z=x/10000;
if(z==0)
{
printf("%d\n",z);
printf("%d%d\n",i,j,k,z);
}
else
{
y=x/100000;
if(y==0)
{
printf("%d\n",y);
printf("%d%d\n",i,j,k,z,y);
}
}
}
}
}
}
return 0;
}
斷點調試,追蹤每一步結果