Мой for-цикл не дает мне всех чисел

#c #for-loop #numbers

#c #for-цикл #числа

Вопрос:

У меня очень простой код, но все равно он работает не так, как я хочу. Он должен вернуть мне все n, которые он проходит, но я получаю только последнее: «10000001». Что я сделал не так?

 #include <iostream>

using namespace std;

int main()
{
  int n=1000;
  int i=1;
  for(;i<3;n*=100,i  );
    {
    cout <<    n << "n";
    int* temp = new int[n];
    delete [] temp;
    }
  return 0;
}
 

Ответ №1:

 for(;i<3;n*=100,i  );
 

Вам не нужна точка с запятой в конце. Делая это, вы запускаете пустой цикл.

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

1. Я бы сказал, что этот ответ очень неверно сформулирован: это не «вам не нужно», а скорее «вы не должны ставить точку с запятой после for утверждения»!