10만까지만 받을수잇구...
결국 성공햇지만 표현에러.. 표현에러가 1000~10000까지 단위를 2칸을 띄어버려서ㅋ.ㅋ
쩃든 1152 번 문제 푸는데 성공했습니다.
아래 소스 올립니다.
#include <stdio.h>
void main()
{
long num1;
int i;
int k;
int one=1;
int j;
int h;
long y;
long z=100000;
scanf("%d",&num1);
printf("%d",one);
if(num1<10)
{
for(i=2;i<=num1;i++)
printf("%2d",i);
}
else if((num1>=10)&&(num1<100))
{
for(i=2;i<=9;i++)
printf("%2d",i);
for(k=10;k<=num1;k++)
printf("%3d",k);
}
else if((num1>=100)&&(num1<1000))
{
for(i=2;i<=9;i++)
printf("%2d",i);
for(k=10;k<=99;k++)
printf("%3d",k);
for(j=100;j<=num1;j++)
printf("%4d",j);
}
else if((num1>=1000)&&(num1<10000))
{
for(i=2;i<=9;i++)
printf("%2d",i);
for(k=10;k<=99;k++)
printf("%3d",k);
for(j=100;j<=999;j++)
printf("%4d",j);
for(h=1000;h<=num1;h++)
printf("%5d",h);
}
else if((num1>=10000)&&(num1<100000))
{
for(i=2;i<=9;i++)
printf("%2d",i);
for(k=10;k<=99;k++)
printf("%3d",k);
for(j=100;j<=999;j++)
printf("%4d",j);
for(h=1000;h<=9999;h++)
printf("%5d",h);
for(y=10000;y<=num1;y++)
printf("%6d",y);
}
else if(num1==100000)
{
for(i=2;i<=9;i++)
printf("%2d",i);
for(k=10;k<=99;k++)
printf("%3d",k);
for(j=100;j<=999;j++)
printf("%4d",j);
for(h=1000;h<=9999;h++)
printf("%5d",h);
for(y=10000;y<=99999;y++)
printf("%6d",y);
printf("%7d",z);
}
}