실행결과 아무것도 출력 되지 않습니다.
이슬비
2023.04.01
1~100까지수중 1과 7로 된 수들의 수를 세는 프로그램입니다. es)7,17
컴파일에서 오류는 안나는데
실행 하면 커서만 깜박이고 아무것도 출력 되지 않네요
왜그러죠#includestdio.h
void main()
{
int a,b,count=0;
for(a=1;a=100;a++)
{
b=a;
a/=10;
if(a==1 || a==7 || a==0)
{
a=b;
a%=10;
if(a==1 || a==7)
count++;
}
}
printf(%d개,count);
}
-
핫다홍
저 상태에서 간단하게 바꿔보면은... int temp=0 을 추가한다음에
for(a=1;a=100;a++)
{
b=a;
b/=10;
if(b==1 || b==7 || b==0)
{
temp=b;
temp%=10;
if(temp==1 || temp==7)
count++;
}
} 이렇게 하시면 됩니다... -
바나나맛캔디
디버깅을 해보시면 1~9 사이 값일때는 a%=10 일때 1~9까지 계속 증가가 되지만 a=10일때 a%=10을 만나게 되면 다시 0부터 ++이 됩니다 그래서 무한루프를 빠지게 되는거죠... 그래서 루프를 빠져나올수가 없어서 printf를 출력을 못하게 되는 겁니다