break文の処理について。
#include<stdio.h>
#define MAX 1000
main(){
int i = 0;
int sum = 0;
int ary[MAX];
puts("整数を入力してください");
-----------------------------------------
while(i < MAX){
printf("No.%d:" , i+1);
scanf("%d" , &ary[i]);
if(ary[i] == 9999){
i++;
break ;
}
sum += ary[i];
i++;
}
------------------------------------------
if(i > 1){
printf("合計は%dで平均は%.2fです\n" ,
sum , (double)sum/(i-1));
}
return;
}
-------で区切っている部分になりますが、
配列aryの値に9999が入ると、breakでifとwhileのループを抜けることになりますが、
ここのbreakについては、ifだけにかかるのではと思っております。
このソースが書いてある解説には「多重ループの繰り返し文の内側の繰り返し文の中で、
break文が使われるとその繰り返し文から抜け出ることになります。」と記載されており
ます。
多分ですが、ifは繰り返し文ではないため、whileを抜け出すことができるのではと
思っているのですが、確認のためご教授の程お願い致します。