Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование_Вагарина_1.docx
Скачиваний:
8
Добавлен:
13.11.2019
Размер:
186.34 Кб
Скачать

Примеры

1. Пример программы, принимающей имя и выводящей сообщение:

#include<stdio.h>

int main(void)

{

char name[20]; //одномерный символьный массив

puts(“Введите свое имя:”);

gets(name);

puts(“Привет, ”);

puts(name);

getch();

return 0;

}

2. Пример программы, выясняющий наличие заданной буквы в строке (результат – «да» или «нет»).

1 СПОСОБ

//есть ли в данной строке данный символ

#include<stdio.h>

#include<string.h>

#include<conio.h>

int main(void)

{

char c,s[50]; //это искомый символ и данная строка

int i=0,flag=0;//это счетчик цикла и признак наличия буквы

//если flag==0 буквы нет, иначе есть

clrscr();

printf("Введите строку: "); gets(s);

printf("Введите символ: "); scanf("%c",&c);

while((i<strlen(s))&&(!flag)) //пока символ не последний и буквы нет

{

if(s[i]==c) flag=1; //если текущий элемент строки равен заданному

//символу, то буква найдена и переключаем flag

else i++; //иначе переходим к новой букве строки

}

if (flag) printf("Есть"); else printf("Нет");

getch(); return 0;

}

2 СПОСОБ (с использованием функции strchr() стандартной библиотеки)

int main(void)

{

char c,s[50]; //это искомый символ и данная строка

clrscr();

printf("Введите строку: ");

gets(s);

printf("Введите символ: ");

scanf("%c",&c);

if (strchr(s,c)!=0) printf("Есть"); else printf("Нет");

getch();

return 0;

}

Задания для самостоятельной работы

  1. В данной строке вставить символ с1 после каждого вхождения символа с2

  2. Дан текст, определить, сколько в нем гласных букв

  3. Из строки удалить среднюю букву, если длина строки нечетная, и две средних в противном случае.

  4. Удвоить каждое вхождение данной буквы в данной строке.

  5. Дано предложение. Удалить из него все символы с1.

  6. Дана строка. В ней имеются только две одинаковые буквы. Найти их.

  7. Дана строка. Удалить из нее последовательность символов, расположенных между круглыми скобками (считается, что в строке ровно одна пара круглых скобок)

  8. Дано слово, состоящее из четного числа букв. Поменять местами первую букву со второй, третью с четвертой и т.д.

  9. Дано предложение, состоящее из слов, разделенных пробелами. Найти слово максимальной длины.

  10. Дано предложение, состоящее из слов, разделенных пробелами. Напечатать все слова, которые встречаются в нем ровно один раз.

  11. Дано предложение, состоящее из слов, разделенных пробелами. Напечатать все слова, начинающиеся и заканчивающиеся одной буквой.

  12. Дано предложение, состоящее из слов, разделенных пробелами. Напечатать все слова, начинающиеся с той же буквы, что и первое слово.

  13. Дано предложение, состоящее из слов, разделенных пробелами. Подсчитать количество слов.

  14. Дано предложение, состоящее из слов, разделенных пробелами. Найти длину самого короткого слова.

  15. Дано предложение, состоящее из слов, разделенных пробелами. Найти длину самого длинного слова.

  16. Проверить, является ли данная строка симметричной (палиндромом).

  17. Дан текст. Определить, встречается ли в нем заданное слово, если да – то сколько раз.

  18. Дано предложение. Выполнить его зеркальное отображение. (например, было -«мама мыла раму», станет – «умар алым амам»).