Книга: Конец холивара. Pascal vs C
Назад: 2.2.2. Цикл, который выполняется не меньше одного раза
Дальше: 3. Функции

2.2.3. Цикл с параметром (со счётчиком)

Пример 2.6: Вычислить факториал числа (n!=1×2×3×…×n).

 

#include <stdio. h>

 

int main ()

{

int f=1, k, n;

 

printf (“Введите целое положительное число\n”);

 

scanf (”%d”, &n);

 

for (k=1; k <=n; k++)

f=f*k;

printf (“n!=%d\n”, f);

 

getchar ();

 

return 0;

 

}

 

Для этого цикла в Си Рис. 6 из части о Паскале даже более нагляден, чем там! Особенно, если заменить в этом операторе k++ на k=k+1, что его работы не изменит. Разве, что только незаметно замедлит, поскольку унарные операции выполняются быстрее бинарных.

Цикл с параметром в Си больше похож на аналогичный оператор в древнем Бейсике – там тоже был шаг цикла и этим он был более гибким, чем соответствующий оператор Паскаля.

В Си возможен, например, такой оператор цикла с параметром:

 

for (i=100; i>=10; i=i-5) {…};

 

Здесь переменная i уменьшается от 100 до 10 с шагом 5 и, соответственно, тело цикла в фигурных скобках будет выполнено 19 раз.

Назад: 2.2.2. Цикл, который выполняется не меньше одного раза
Дальше: 3. Функции