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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Tuma
59 / 40 / 18
Регистрация: 28.09.2013
Сообщений: 188
#1

Gets() не срабатывает во время цикла - C++

30.03.2014, 20:14. Просмотров 218. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# include <stdio.h>
#include <cstdio>
#include <string.h>
#include<iostream>
char s1[201];
int k,i,j,po,r;
bool kk;
void stroka()
{
    k=0;
    for(i=0;i<strlen(s1)+1;i++)
    {
        if (s1[i]==' ' || s1[i]=='\0' )
        {
          po=i-1; 
        for(j=0;j<=po/2;j++)
        {
            if (s1[k]==s1[po-j]) 
               kk=true;
               else kk=false;break;
        }
            if (kk)
                for(r=k;r<=po;r++)
                    printf("%c",s1[r]);
            printf(" ");
            k=po+2;
        }
    }   
}
void zadanue2()
{
    printf("Vvedite stroky(ne bolle 200 simvolov)\n");
    gets(s1);
    stroka();
}
bool AskUser(const char *question)
{
    char answer[16];
 
    printf("%s (Y/N)", question); 
    scanf("%s",&answer);
 
        
    if (answer[0] == 'n') 
        return false;
    else
        return true;
}
int  main ( )
 {
   do
   {
       zadanue2();
   }
   while(AskUser("Povrorut zadanue?"));
    return(0);
   }
Функция ввода gets(s1) срабатывает только на первом круге,а далее просто игнорируется,никто не подскажет,что нужно добавить или исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2014, 20:14     Gets() не срабатывает во время цикла
Посмотрите здесь:

C++ Выброс числа во время цикла
Окно программы во время выполнения цикла C++
Как задать время выполнения цикла в секундах? C++
Используя одну переменную цикла укажите возможные способы объявления заголовка счетного цикла. C++
Завершение бесконечного цикла через определенное время C++
C++ Записи. Дано время t1 и время t2. Определить, сколько времени пройдет от t1 до t2
C++ Конструкция цикла for, для удаления элементов во время перечисления из контейнера STL
Std::list удаление элемента во время цикла C++
C++ Нахождение отрицательного цикла в графе и вывод цикла
Функция выполняется не во время цикла - а после выхода из него C++
C++ Сделать паузу во время цикла
Не срабатывает ввод строки при первом выполнении цикла C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
30.03.2014, 21:01     Gets() не срабатывает во время цикла #2
Попробуйте так (в AskUser()):
C++
1
2
3
printf("%s (Y/N)", question); 
scanf("%s",&answer);
getchar();
Tuma
59 / 40 / 18
Регистрация: 28.09.2013
Сообщений: 188
30.03.2014, 21:10  [ТС]     Gets() не срабатывает во время цикла #3
Спасибо, помогло.
Yandex
Объявления
30.03.2014, 21:10     Gets() не срабатывает во время цикла
Ответ Создать тему
Опции темы

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