1 100
2 90
입력하면 프로그램이 멈춘다 for문에서 걸리는거같은데 어디서 걸리는지 모르겟다 한번만봐줘
#include <stdio.h>
int main()
{
int a,a1,b,b1;
int t,i;
scanf(\"%d%d%d%d\",&a,&a1,&b,&b1);
if(a<a1){
t=a;
a=a1;
a1=t;
}
if(b<b1){
t=b;
b=b1;
b1=t;
}
for(i=a1;i<a;i++){
if(b==i){
for(i=a;i<=100;i++){
if(b1==i) {printf(\"cross\");return 0;};
}
for(i=a1;i>=0;i--){
if(b1==i){printf(\"cross\");return 0;};
}
}
if(b1==i){
for(i=a;i<=100;i++){
if(b==i){printf(\"cross\");return 0;};
}
for(i=a1;i>=0;i--){
if(b==i){printf(\"cross\");return 0;};
}
}
}
printf(\"not cross\");
return 0;
}
디버-그를 해보새여!
포문i 초기값이 a1이고 a까지 ++하라고하면 생각을해보자...음.. a1에 10을 넣고 a9를 넣으면 얘가 몇번을 반복할까요??
a가 제일크고 그다음이 a야 처음에 if문으로 처리해줫스,ㅁ
아니 for문이 몇부터 몇까지 반복하겟다인데 지금 포문구성이 좀 이상한거같은데 위에서 a1이 더크면a랑 바꾸자나 고로 a가 a1보다 작은수인데
a에 100저장되고 a1에 90저장하면 바껴서 a=90 a1=100이되는데 for(i=100;i<90;i++)이랑 같자나
100부터 90보다 작아질때까지면 --를 하던가 i=a;i<a1으로 바꾸던가
그렇게 돌려보면 문제가 한군데 더날꺼야 그러면 if(b==i)안쪽에 for문을 보세여..
님들이건 첫번쨰 포어문이 자꾸 포문들어가서 초기화되서 생기는 문제입니다.
포문 끝남 i==10-> 포문올라감 i<100 ; 무한반복