c언어 300제에서...
리나
2023.04.01
학교 도서실에서 우연히 발견해서 빌렸는데
for문에 관한건데요
#include stdio.h
main()
{
int i;
int hap = 0;
for(i = 1;i = 10;i = i + 1)
{
hap = hap + i;
}
printf(1부터 10까지의 합 : %d,hap);
}
이렇게 있는데요
아래그림이
프로그램 시작→hap을 0으로 초기화→i에 1을 대입
→i가 10보다 작거나 같습니까?→예 작거나 같습니다.→hap + i를 연산하여 hap 변수에 대입→i+1을 연산하여 i 변수에 대입
↘
아니오, i값이 10보다 큽니다.→프로그램 종료
이라고 써있는데
옆에 설명에
for(i = 10;i 0; i = i - 1)
라고 바꿔 쓰면 1씩 감소되며 실행된다고 써있는데요
for문에서 초기값 i=10이고, 조건 비교에서 i0이면
옳지않다고 생각해서 해봤는데
for문에 에러가 있다는군요
초록색부분을 hap = hap - i;로
바꿔야하나요?
-
온새미로
아......................
저는 감소한다는게 -1-2-3...이런식으로 이해했네요 헐ㅋ
감사합니다 -
안다미로
for(i = 1;i = 10;i = i + 1) 이렇게 해서 1+2+3+4+5+6+7+8+9+10을 하나
for(i = 10;i 0; i = i - 1) 이렇게 해서 10+9+8+7+6+5+4+3+2+1을 하나 똑같습니다.