все кратные 3 от 1 до 100 с помощью цикла for в c

#c #loops #for-loop

Вопрос:

 for (int x = 3; x lt;= 100; x%3 == 0; x   ) {  printf("%dn", x); }  

Я использую книгу «Как программировать C» Дейтеля, и есть это упражнение для этого цикла for, и они хотят, чтобы я исправил его и получил результат, кратный 3.

Я решил эту проблему с помощью оператора if. Но мне любопытно, есть ли другой способ исправить это в цикле.

что я сделал, так это :

 for (int x = 3; x lt;= 100; x   ) {   if(x%3 == 0){  printf("%dn", x);  }  }  

Комментарии:

1. for (int x = 3; x lt;= 100; x = 3 )

2. Петля не нужна. Даже при непостоянной верхней границе это может быть вычислено в одном операторе. Подумайте об истории ученика, которому было поручено сложить все числа от 1 до 100.

3. Вы не можете выучить C по книге на языке Си.

4. Вы намерены добавить цифры или распечатать их?

Ответ №1:

Вы можете добавлять 3 вместо 1 после каждой итерации, чтобы гарантированно было несколько 3

Что — то вроде этого:

 for (int x = 3; x lt;= 100; x  = 3)  {  printf("%dn", x); }