Форум программистов, компьютерный форум CyberForum.ru

Проблемы с циклом while - C++

Восстановить пароль Регистрация
 
Sabbath1231
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 3
22.09.2013, 19:04     Проблемы с циклом while #1
Подскажите пожалуйста:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 
int main()
{
    int mas[5];
    int i=0;
    while(scanf("%d", &mas[i])!=EOF)
    {
        i++;
    }
    for (i=0; i<5; i++)
    {
        printf("%d ", mas[i]);
    }
}
Когда я ввожу какую-либо строчку, например "1 2 3 4 5", и нажимаю enter, то программа забивает значения в массив:
mas[0]=1
...
mas[4]=5
но из цикла не выходит и не обрабатывает этот кусок кода
C++
1
2
3
4
for (i=0; i<5; i++)
{
    printf("%d ", mas[i]);
}
в чем может быть проблема?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2013, 19:04     Проблемы с циклом while
Посмотрите здесь:

с циклом for C++
Проблемы с циклом!!! C++
Задача с циклом for C++
C++ Проблемы с циклом for
Задачка с циклом while C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Байт
 Аватар для Байт
13974 / 8805 / 1227
Регистрация: 24.12.2010
Сообщений: 15,949
22.09.2013, 19:14     Проблемы с циклом while #2
Нажми Ctrl-Z
fishec
 Аватар для fishec
118 / 118 / 30
Регистрация: 07.09.2013
Сообщений: 337
22.09.2013, 19:21     Проблемы с циклом while #3
Цитата Сообщение от Байт Посмотреть сообщение
Нажми Ctrl-Z
А можно как-то считывать до нажатия Enter без Cntr+z?
Sabbath1231
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 3
23.09.2013, 22:06  [ТС]     Проблемы с циклом while #4
Цитата Сообщение от Байт Посмотреть сообщение
Нажми Ctrl-Z
Спсибо, а без Ctrl+Z это возможно?
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,333
Завершенные тесты: 1
24.09.2013, 10:49     Проблемы с циклом while #5
fishec, Sabbath1231,
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <conio.h>
 
int main()
{
    const int n = 5;
    int mas[n];
    int i=0;
    while(i<n && scanf("%d", &mas[i])!=EOF)
    {
        //printf("i==%d;\n", i);
        i++;
    }
    for (i=0; i<n; i++)
    {
        printf("%d ", mas[i]);
    }
 
getch();
return 0;
}
Qwertiy
817 / 625 / 75
Регистрация: 20.08.2013
Сообщений: 2,525
24.09.2013, 13:01     Проблемы с циклом while #6
Цитата Сообщение от Sabbath1231 Посмотреть сообщение
while(scanf("%d", &mas[i])!=EOF)
C++
1
while(scanf("%d", mas+i)==1)
Добавлено через 46 секунд
А стоп... Надо до Enter'a.

Добавлено через 5 минут
Рядом есть тема.
Yandex
Объявления
24.09.2013, 13:01     Проблемы с циклом while
Ответ Создать тему
Опции темы

Текущее время: 08:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru