|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.12.2012, 15:07 | #1 |
Пользователь
Регистрация: 11.12.2012
Сообщений: 56
|
Контрольная работа (Си)
Помогите пожалуйста с решением контрольной работы.
1. Определить функцию с именем NumSymbol для подсчета количества вхождений заданного в текст, который хранится в строке, заканчивавшейся '\0'. 2. Определить функцию с именем Palindrom для проверки, является ли слово из строки заканчивающейся '\0', палиндромом. Если слово полиндром, то функция возвращает - 1, в противном случае - 0. 3. Определить собственный вариант с именем WordCmp стандартной функции с именем strcmp. 4. Определить функцию с именем main, создать в ней необходимые для вызова NumSymbol(), Palindrom(), WordCmp() объекты, и выполнить вызовы. Помогите пожалуйста, очень нужно в этом разобраться) |
11.12.2012, 15:11 | #2 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Хорошо.
Цитата:
|
|
11.12.2012, 15:18 | #3 |
Пользователь
Регистрация: 11.12.2012
Сообщений: 56
|
|
11.12.2012, 15:54 | #4 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
"Строка, заканчивающаяся '\0'" также называется C-строкой. Обычный её "тип" - const char* (в действительности это адрес первого символа в строке, который передаётся вместо строки целиком). Количество вхождений, если не усложнять - int, целое. Напишите прототип функции, которая в качестве аргумента принимает строку, заканчивающуюся '\0' и возвращает целое число.
|
11.12.2012, 16:28 | #5 |
Пользователь
Регистрация: 11.12.2012
Сообщений: 56
|
Так? Сомневаюся конечно, что это правильно)
Код:
|
11.12.2012, 17:08 | #6 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Цитата:
Код:
Код:
|
|
11.12.2012, 17:30 | #7 |
Пользователь
Регистрация: 11.12.2012
Сообщений: 56
|
Ну как сказать, даже не представляю, ну может быть для начала бы нашел первый символ 0, и удалил бы все, что идет после него, чтоб искать было легче), но так как у нас строка оканчивается на 0, видимо убирать ничего не придется. Ну а потом бы просто посчитал кол-во символов X, вот только вопрос в том, как это сделать наиболее эффективней, вот до этого я додуматься не могу)
|
11.12.2012, 18:05 | #8 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Цитата:
К примеру, можно постепенно передвигать палец по ленте от первого элемента и всякий раз, видя Х, считать: "раз", "два", "три"... А как только увидим 0 - значит, всё, последнее названное число и есть ответ. Код:
|
|
11.12.2012, 18:44 | #9 |
Пользователь
Регистрация: 11.12.2012
Сообщений: 56
|
Мои шансы небезнадежны?))
Код:
Последний раз редактировалось Nekit9401; 11.12.2012 в 20:47. |
11.12.2012, 23:08 | #10 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Не убирайте комментарии. По крайней мере, до тех пор, пока код не станет столь же понятен Вам, как и они.
Я возвращаю их на место: Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Контрольная работа | Supernatural | Помощь студентам | 6 | 25.03.2017 17:54 |
Контрольная работа | Vart | Microsoft Office Excel | 1 | 20.06.2011 10:13 |
Контрольная работа | KostyaS | Помощь студентам | 3 | 21.04.2011 23:44 |
контрольная работа | ГалинаБ | Помощь студентам | 17 | 19.01.2011 01:30 |
контрольная работа | Rustem5 | Паскаль, Turbo Pascal, PascalABC.NET | 10 | 28.06.2010 16:55 |