Пожалуйста, помогите мне, что моя голова готова ударвложенного цикла без фигурных скобок
#include<stdio.h>
int main(void){
unsigned short sum1=0;unsigned short counter=0;
printf("Enter the number of integers you want to sum\n");scanf("%hd",&counter);
for (unsigned int i=1;i<=counter;++i)
{
printf("The i is %d and the sum is %d\n",i,sum1);
sum1 =0;// 2 iteration sum =0;
printf("The i is %d and the sum is %d\n",i,sum1);
for(unsigned int j=1;j<=i;++j)
sum1 =sum1+j;// 1 iteration sum=1;
printf("The i is %d and the sum is %d\n\n",i,sum1);
}
return 0;
}
До сих пор книга, которую я прочитал в вложенных циклов, используемых поставить фигурные скобки Но не в этом примере ... Вопрос 1) Почему во второй итерационной сумме будет 3, а не 2 (я спрашиваю об этом, потому что сумма инициализирует 0 до перехода к вложенным)? Вопрос 2) Почему, когда я хочу напечатать f(), ошибка j попадает в ошибку? Может ли кто-нибудь объяснить мне ТОЧНО, КАК ЭТО ПРОГРАММА РАБОТАЕТ? я имею в виду 1-й итерации, 2-ой итерации .... Спасибо братья ....
@haccks как бы улучшение вашего редактирования делает для структуры кода, я думаю, что это отвлекает от вопроса, который заключается в понимании запутанного блока кода. Переформатируя его, вы устранили большую часть путаницы. – Jordan
@Jordan; Я сделал это для OP. – haccks
@haccks Это прекрасно, я не говорю, если я думаю, что вы делали плохо или что-то в этом роде, но кто-либо другой, приходящий на этот вопрос для помощи, может не понять, о чем этот вопрос действительно был. (Вероятно, это маловероятное событие: P) – Jordan