if을 한번만 실행시키고시퍼용!!
정훈
if문질문이요.ㅠㅠ질문 요약 :if문을 한번만 실행하고싶어요질문 내용 :
#include stdio.h
int main(void)
{
int num[5] = {10,20,30,40,50};
int i,j;
printf(원하는 값을 입력하시오.(10~50)\n);
scanf(%d,&j);
for(i=0;i5;i++)
{
printf(%d\t,num[i]);
if(j=num[i])
num[i]-=j;
printf(%d\n,num[i]);
}
return 0;
}
만약제가 25를 입력하면 3번째 조건인 30이 입력되고 30-25가 되서 num[3]에는 5가 입력이 될거에요.
그리고 그다음 num[4]의 조건문을 실행하게되면 40-25가 됩니다.
제가원하는건 딱 한번만 if 문이 실행되서 결과값이
ex)25를입력하면 10,20,5,40,50 이렇게 해당하는거 한번만 나오게 하고싶어요 어떻게해야하나요.ㅠㅠ
-
은솔
오오오오!!!!! 멋쟁이 이십니다!!
-
목소리
j가 입력으로 1을 받았다고 가정하면...
일단 처음 if문의 조건을 만족해서 num[i]번째에 값을 넣게 됩니다.
그리고 나서는 20,30,40,50이 출력되야 하므로...if문의 조건을 만족시키지 않기위해 배열의 최대값인 50을 초과하는 값을 j에 넣은겁니다...
즉석해서 코딩한거라...실행될진 모르겠네요;; 제 생각대로라면 될듯...ㅎㅎ;;; -
소희
언어장이님 감사감사드립니다^^;; 그런데 밑에 머리굴려서 짠 코드중에 j=51이부분 어떻게 되는건지 설명좀 부탁드릴께요...너무 물어봐서 죄송.ㅠ
-
정훈
for(i=0;i5;i++){
printf(\%d\\t\ -
물맑
감사감사^^답변감사드립니다.
-
목향
int count=0;
if(j=num[i]) {
num[i] -= j;
count++;
}
printf(\%d\\n\