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

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

Восстановить пароль Регистрация
 
flatra
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 343
08.01.2013, 16:19     Ошибка на вводе данных #1
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++ Ошибка при вводе
Ошибка при вводе матрицы. C++
Ошибка при вводе строки ! C++
Почему при вводе данных вылетает ошибка C++
Ошибка в вводе/выводе массива C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
v.a.l.i.d
 Аватар для 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
Сообщений: 343
08.01.2013, 16:28  [ТС]     Ошибка на вводе данных #3
дак он все равно выкидывает

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

Добавлено через 40 секунд
пожалуйста помогите с данной задаче
v.a.l.i.d
 Аватар для 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
Сообщений: 343
08.01.2013, 16:51  [ТС]     Ошибка на вводе данных #5
я ввожу dddaassrR$

Добавлено через 5 минут
все равно выкидывает
v.a.l.i.d
 Аватар для 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++
Ошибка при вводе данных и в функциях C++
C++ Ошибка при вводе числа

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

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

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