1. Пользуйтесь тегами кода. - [code] ... [/code] 2. Точно указывайте язык, название и версию компилятора (интерпретатора). 3. Название темы должно быть информативным. В описании темы указываем язык!!!
Задание вот такое: С помощью текстового редактора создать файл,содержащий текст, длина которого не превышает 100 символов(длина строки не должна превышать 70 символов). Имя файла должно иметь расширение dat.Написать программу,которая: -выводит текст на экран дисплея; -по нажатию произвольной клавиши выделяет в тексте заданное слово(ввести слово с клавиатуры); -выводит текст на эккран дисплея еще раз, заменяя в заданном слове строчные букв прописными.
я воспользовалась поиском и нашла решение задачи на паскале,но всё же работа со строками там сильно отличается от с++.
вот например,можно ли с файла(ну или с экрана) считать тект в массив по словам?как осуществлять поиск конкретного слова,особенно если есть несколько вхождений.
и вот насчет смены букв строчных на пописные...кажется у них код различается на определенную величину...или как их можно заменить?
Значит, смотри, какая есть идея: работа с консольным приложением в MSVC и с DOS-приложением в Turbo C++ существенно различается, поэтому делаем так:
// Я отлаживала программу под DOS - компилятором (TC 3.0), поэтому я это слово определила... // Тебе (как я понимаю, для консольного приложения Windows), эту строчку надо убрать... // (к сожалению, MSVC у меня нет, поэтому проверить вывод не могу, но должно работать) #define RUN_IN_DOS
// первый проход - pass = 0, установить цвет выводимых символов в красный if(!pass) { #ifdef RUN_IN_DOS textcolor(RED); #else SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED); #endif } // А вот это - второй проход, тут меняем регистр ... else { for(int i = 0; i < strlen(word); i++) *(p+i) = toupper(*(p+i)); }
for(int i = 0; i < strlen(word); i++) #ifdef RUN_IN_DOS cprintf("%c", *pp++); #else cout << *pp++; #endif
// первый проход, pass = 0 - восстановить серый цвет if(!pass) { #ifdef RUN_IN_DOS textcolor(LIGHTGRAY); #else SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); #endif }
Возникает вопрос: "Зачем вообще понадобилось ключевое слово RUN_IN_DOS?"... Затем, что я просто напросто без существенной правки приложения перекомпилирую его под другую OS, и оно должно работать. Просто гораздо удобнее...