c언어 반복문 중괄호 질문입니다.
은송이
질문 제목 : c언어 반복문 중괄호 질문 #include stdio.h
int main (void) {int i,num; // num=5
int result=1;printf(팩토리얼 연산을 원하는 숫자를 입력하세요:);
scanf(%d,&num);for(i = num; i 0 ; i--)result=result*i;
printf(%d의 팩토리얼 연산 결과는 %d입니다.\n,num,result);return 0;
}실행결과:
팩토리얼 연산을 원하는 숫자를 입력하세요:5
5의 팩토리얼 연산 결과는 120입니다.
질문 내용 : 어제도 비슷한 질문 올렸는데요
1. 2.
for(i = num; i0; i--) for(i = num; i0; i--)
{
result=result*i result=result*i
printf(%d의 팩토리얼 연산 결과는 %d입니다.\n,num,result); printf(%d의 팩토리얼 연산 결과는 %d입니다.\n,num,result);
}2번코드를 실행햇을때 실행결과:
5의 팩토리얼 연산 결과는 5입니다.
5의 팩토리얼 연산 결과는 20입니다.
5의 팩토리얼 연산 결과는 60입니다.
5의 팩토리얼 연산 결과는 120입니다.
5의 팩토리얼 연산 결과는 120입니다.이렇게 나오는데 결과로 봤을때 중괄호의 역할은
printf 출력을 1번 찍지않고 반복문 끝나는동안 계속 계속 찍어주는거 같은데
제가 생각하는게 맞나요?답변 감사드립니다!
-
무들
중괄호가 없으면 for문 바로 다음 문장까지만 처리되고 중괄호가 있으면 중괄호에있는 문장들 다 실행합니다.
-
영미
for문 뿐만이 아니라 다른것들도 중괄호가 없으면 ; 전까지 처리합니다.
ex)
if(num0) result=result+1;
while(num) result=result+1;
for(int i=0;i9;i++) ;
등등 -
맑다
정말 감사합니다! ㅠㅠ복학준비하는데 C언어가 생각보다 어렵네요.. 벌써부터 어려우면안되는뎅..
for문 은 중괄호 생략했을시 젤 가까운 한문장만 중괄호 처리되는것 맞나요? -
우솔
추가적으로 1번같은 경우는 아래와 같이 사용하기도 합니다.
for(i=num;i0;i--) result=result*i;
printf(\%d의 팩토리얼 연산 결과는 %d입니다.\\n\ -
화이트캣
감사합니다!
-
날애
1번은 아래과 같은것이고..
for(i=num;i0;i--)
{
result=result*i;
}
printf(\%d의 팩토리얼 연산 결과는 %d입니다.\\n\