Почему при инкременте отсчет идет от 1, а не от 0? - C (СИ)
Формулировка задачи:
день добрый, ситуация такая.чтобы разобраться с инкрементами написал код
если же в цикле
то переменная с не считается, почему так? почему при инкременте отсчет идет от 1, а не от 0, ведь сперва при c++<10 сверка, потом прибавление 1. в книгах подобной информации нет.
#include<stdio.h>
int main (void)
{
int n, x, c;
n=0;
x=0;
c=0;
printf(" n чистое ++n n++\n");
while(n<10)
{
while(++x<1);
while(c++<1);
printf("%10d%10d%10d\n", n,x,c);
n=n+1;
}
return 0;
}while(n<10)
{
x=++;
c=c++;
printf("%10d%10d%10d\n", n,x,c);
n=n+1;
}Решение задачи: «Почему при инкременте отсчет идет от 1, а не от 0?»
textual
Листинг программы
x=++x; c=c++;
Объяснение кода листинга программы
- Переменная
xувеличивается на единицу и присваивается новое значение. Начальное значениеxравно 1. - Переменная
cувеличивается на единицу и присваивается новое значение. Начальное значениеcне указано, предполагается, что оно равно 0. Таким образом, код выполняет два действия: - Инкремент переменной
x, начальное значение которой равно 1. - Инкремент переменной
c, начальное значение которой не указано.