Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

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

08.01.2013, 16:19. Просмотров 288. Ответов 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 минут
помогите исправить ошибку
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2013, 16:19
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Ошибка на вводе данных (C++):

Ошибка при вводе данных и в функциях - 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++
Вот прогамма. Она просит ввести Ваше име, возраст и пол. Первые два считывает, а с последним прблеммы... Не ждёт ввод данных, и пускает...

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

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

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

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

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

Добавлено через 40 секунд
пожалуйста помогите с данной задаче
0
v.a.l.i.d
416 / 381 / 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;
0
flatra
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 358
08.01.2013, 16:51  [ТС] #5
я ввожу dddaassrR$

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

C++
1
2
3
4
   int n;
   cin >> n;
   return 0;
}
0
Croessmah
Ушел
13764 / 8014 / 923
Регистрация: 27.09.2012
Сообщений: 19,724
Записей в блоге: 3
Завершенные тесты: 1
09.01.2013, 07:29 #7
Какая ОС?
Вам нужно "тормознуть" консоль перед exit(0) (хотя зачем exit(0) я вообще не помимаю, так же как и exit(1).). Если вылетает, значит выполняется одно из условий и программа уходит в exit(1)
0
09.01.2013, 07:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2013, 07:29
Привет! Вот еще темы с ответами:

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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