![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Пример 6. ⇐ ПредыдущаяСтр 2 из 2
intlen; cout< < " Введитестроку" < < endl; char str1[8], *str2; gets(str1); len=strlen(str1); // определение длины строки str2=newchar[len+1]; //динамическое выделение памяти под строку str2 strcpy(str2, str1); cout< < " Строка 1: " < < str1< < endl; cout< < " Строка 2: " < < str2< < endl; delete []str2; // удаление строк из памяти
Ниже перечислены некоторые функции для работы со строками из библиотеки string.h: Strncat (r1, r2, n) – к переменной r1 добавляет первых n символов строки r2 Strcpy (r1, r2) – копирует символи из строки r2 в строку r1 Strncpy (r1, r2, n) – копирует первых n символов строки r2 в строку r1 Strchr (r1, < символ>) – определяет первое вхождение данного символа в строку r1. Strrchr (r1, < символ>) – определяет последнее место заданного символа в строке Strspn (r1, r2) – определяет номер первого символа, который входит в строку r1, но не входит в строку r2. Strstr (r1, r2) – определяет в строке r1 подстроку, которая начинается с первого вхождения строки r2 в сроку r1. Strtok (r1, r2) – определяет часть строки r1, которая заканчивается перед первым одинаковым символом в строках r1 и r2 Strnset (r1, < символ>, n) – вставляет n раз заданный символ перед строкой r1 Strupr (r1) – превращает все маленькие буквы в Большие Strlwr (r1) – превращает все большие буквы в маленькие Strrev (r1) – записывает строку в обратном порядке Strcmp (r1, r2) – сравнивает строки символов r1 и r2, с учетом регистра для латинских букв Stricmp (r1, r2) – сравнивает строки r1 и r2, не различая регистра букв.
Пример 7. Написать программу, которая определяет количество букв к в стихотворении без использования функций для работы со строками. #include < iostream.h> int _tmain(intargc, _TCHAR* argv[]) { SetConsoleCP(1251); SetConsoleOutputCP(1251); char s1[2][20]; cout< < " Введитестихотворение" < < endl; for (int i = 0; i< 2; i++) { gets(s1[i]); cout< < endl; } cout< < " Введитебукву: "; charbukva; cin> > bukva;
intkol; int l; for (int i = 0; i< 2; i++) { kol=0; l=strlen(s1[i]); for (int j = 0; j< l; j++){ if (s1[i][j]==bukva) kol++; } cout< < " Количество букв " < < bukva< < " в строке " < < i+1< < ": " < < kol< < endl; } system(" pause"); return 0; }
Пример 8. Написать функцию, для создания копии строки. #include < iostream.h> char* cop(char *s11) { char* s22=new char[strlen(s11)+1]; for (int i = 0; i < strlen(s11); i++) { s22[i]=s11[i]; } return s22; } int _tmain(intargc, _TCHAR* argv[]) { SetConsoleCP(1251); SetConsoleOutputCP(1251); char *s1; cout< < " Введитестроку" < < endl; s1=new char[20]; gets(s1); cout< < " Копиястроки: " < < cop(s1); system(" pause"); return 0; }
Решить самостоятельно: 1. Заменить в заданной строке все буквы Ch1 на Ch2 (их значения вводить с клавиатуры). 2. В заданной строке удвоить каждое вхождение буквы Ch. 3. Дана последовательность слов. Напечатать все слова, отличные от слова «hello”. 4. В заданной строке после каждой буквы Ch вставить строку Str1.
|