Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Очень простая программа


Автор: NDQuattro 20.7.2008, 12:07
Код

#include <iostream.h>
int main() {
    int i ;
    for(i = 0; i < 9; i++)
    cout << i+1;
    return 1;
}


Сотрите, сначала  i=0, цыкл доходит до соunt и выдает 0+1=1, после етого выполняется инкремент, то есть после 1-го цыкла  i становится 2
Цыкл второй.  i=2, опять же таки доходит до count и должно выводить 2+1=3, а результат программы является таким:123456789
Объясните плиз почему так?? а не 13579
Заранее благодарен, сорри за дурацкие вопросы ((


Автор: Annihilator 20.7.2008, 12:11
Цитата(NDQuattro @  20.7.2008,  16:07 Найти цитируемый пост)
 после етого выполняется инкремент, то есть после 1-го цыкла  i становится 2

после инкремента i становится равное 1, ты ведь не делал переприсваивание а просто написал

Код

cout << i+1;


Автор: NDQuattro 20.7.2008, 12:15
Точно....ну я и туплю(( 
Спасибо!)

Автор: Annihilator 20.7.2008, 12:28
Ипользуй отладчик! Он тебе лучше всех расскажет обо всех изменениях!!

Автор: NebelDT 30.9.2008, 21:05
надо чтобы  i=i+2 а не i++ smile 
Код

#include <iostream.h>
int main() {
    int i ;
    for(i = 0; i < 9; i=i+2)
    cout << i+1;
    return 1;
}


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)