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

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

Войти
Регистрация
Восстановить пароль
 
flatra
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 355
#1

Ошибка на вводе данных - C++

08.01.2013, 16:19. Просмотров 268. Ответов 6
Метки нет (Все метки)

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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
 
/*
*  В последовательности введенных символов (последний '$') определить порядковый номер первой буквы R
*   (с учетом верхнего/нижнего регистров)
*/
 
#define MAX_STR 128
#define STOP_CHAR '$'
#define FIND_CHAR 'r'
 
int main(void){
    char buf[MAX_STR], *p;
    printf("Enter sentence ended by $: ");
    if ( !fgets(buf, MAX_STR, stdin) )
        exit(1);
 
    if ( ( p = strchr(buf, STOP_CHAR) ) == NULL ){
        printf("Can't find end of sentence!\n");
        exit(1);
    }
    *(p + 1) = '\0';
 
    for ( p = buf; *p; ++p )
        if ( (*p == FIND_CHAR) || (*p == toupper(FIND_CHAR)) )
            break;
    if ( !*p ){
        printf("Can't find any '%c' or '%c' character!\n", FIND_CHAR, toupper(FIND_CHAR));
        exit(1);
    }
 
    printf("First character '%c' has index %d in string \"%s\" starting by zero\n", *p, p - buf, buf);
    exit(0);
}
Добавлено через 11 минут
помогите исправить ошибку
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2013, 16:19     Ошибка на вводе данных
Посмотрите здесь:

Ошибка при вводе данных и в функциях - C++
Некорректно происходят вычисления x1 и x2. Так же при вводе в переменную a,b или c начинается непонятный цикл...ясно что он постоянный...

Почему при вводе данных вылетает ошибка - C++
вот написал программу #include &lt;iostream&gt; using namespace std; #define N 2 struct Spis { char KODp; char Fm; char TARIF; ...

Ошибка при вводе - C++
мне нужно записать числа с файла в список , подскажите что не так выводит последнее лишнее число не пойму откуда оно берется #include...

Ошибка при вводе дерева - C++
В заданном непустом бинарном дереве найти длину (число ветвей) пути от корня до ближайшей вершины со значением, равным заданному....

Ошибка при вводе строки ! - C++
Точнее не ошибка а не могу ввести строку(не вводится)! Подскажите в чём дело, заранее благодарен! Вот код, функция void vvod(char **D) ...

Ошибка при вводе числа - C++
Подозреваю, что где-то нужно обнулить переменную rows. Потому что (как показано на скрине) число &quot;45&quot; всегда состоит из первой цифры кол-ва...

Ошибка при вводе матрицы. - C++
Здравствуйте, сейчас пишу программу для проверки матрицы на латинский и магический квадрат, мне каждое действие нужно сделать отдельной...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
08.01.2013, 16:24     Ошибка на вводе данных #2
В конце можно поставить
C++
1
system("pause");
так программа будет ждать нажатия любой клавиши
flatra
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 355
08.01.2013, 16:28  [ТС]     Ошибка на вводе данных #3
дак он все равно выкидывает

Добавлено через 58 секунд
может эту задачу можно как то по другму решить

Добавлено через 40 секунд
пожалуйста помогите с данной задаче
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
08.01.2013, 16:34     Ошибка на вводе данных #4
на C++
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
char str[100];
int k = 0;
 
cout << "Enter string: ";
cin.getline(str, 100, '$');
 
for (int i=0; i<strlen(str); i++)
{
    k++;
    if (str[i]=='R' || str[i]=='r')
        break;
}
 
if (k == strlen(str))
    cout << "Символы 'R' и 'r' не найдены в строке" << endl;
else
    cout << "Порядковый номер символа 'R' или 'r' " << k << endl;
flatra
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 355
08.01.2013, 16:51  [ТС]     Ошибка на вводе данных #5
я ввожу dddaassrR$

Добавлено через 5 минут
все равно выкидывает
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
08.01.2013, 16:55     Ошибка на вводе данных #6
У меня не выкидывает. в конце программы что-то вроде этого написать:

C++
1
2
3
4
   int n;
   cin >> n;
   return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2013, 07:29     Ошибка на вводе данных
Еще ссылки по теме:

Ошибка в вводе/выводе массива - C++
При выводе элемента массива всегда значение ноль. Вероятно ввожу массив неправильно. Помогите пожалуйста найти ошибку. P.S. жел-но не...

Непонятная ошибка при вводе - C++
Дана символьная строка. Слово - последовательность символов между пробелами, не содержащая пробелы внутри себя. Определить количество слов...

Обработка данных при вводе - C++
При решении данной задачи обязательным условием является обработка входных данных сразу после их введения. Запрещается каким образом...

Русский язык в вводе данных - C++
Ребят, не подскажите как можно вводить данные на русском языке в getline? Или это не возможно? getline(cin, str1); После ввода...

Ошибка кодировки при вводе в файл - C++
Добрый день. Подскажите, как можно решить проблему с неправильной кодировкой при вводе текста в файл (.txt). Пример ввода: раз два...


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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
12979 / 7291 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
09.01.2013, 07:29     Ошибка на вводе данных #7
Какая ОС?
Вам нужно "тормознуть" консоль перед exit(0) (хотя зачем exit(0) я вообще не помимаю, так же как и exit(1).). Если вылетает, значит выполняется одно из условий и программа уходит в exit(1)
Yandex
Объявления
09.01.2013, 07:29     Ошибка на вводе данных
Ответ Создать тему
Опции темы

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