Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Упражнения. Обработка последовательностей символов




Обработка последовательностей символов

Пример.1 Вводится последовательность символов, в конце которой стоит точка. Подсчитать общее количество символов, отличных от пробела (не считая точки).

#include <stdio.h>

void main()

{

char z; /*z –вводимый символ*/

int k; /*k – количество значащих символов*/

printf (“напишите предложение с точкой в конце\n”);

for (k=0; (z=getchar())!=’.’;)

if (z!=’ ‘) k++;

printf (“\n количество символов= %d”, k);

}

Пример 2.В заданном стринге удалить все буквы а.

#include <stdio.h>

main()

{int i,j=0;

char s[]="acfdakpoakpoka";

for(i=0;s[i]!='\0';i++)

if(s[i]!='a')

s[j++]=s[i];

s[j]='\0';

printf("%s\n",s);

}

Пример 3 Ввести стринг и распечатать его, заменив все вхождения буквы а на последовательность символов “abc”.

#include <stdio.h>

main()

#define MAX 100

#define MAXN 200

{int i,j=0;

char s[MAX],sn[MAXN];

scanf("%s",s);

for(i=0;j<MAXN-1 && s[i]!='\0';i++)

if(s[i]=='a'&& j<MAXN-3)

{sn[j++]='a'; sn[j++]='b';sn[j++]='c';}

else

sn[j++]=s[i];

sn[j]='\0';

printf("%s\n",sn);

}

  1. удалить символы, стоящие перед символом *. Рассмотреть случай наличия в последовательности нескольких символов *;
  2. подсчитать сколько раз среди символов встречается буква х;
  3. исключить все символы между круглыми скобками, включая сами скобки. Рассмотреть случай вложенных скобок;
  4. подсчитать наибольшее число подряд идущих пробелов;
  5. заменить все восклицательные знаки точками;
  6. заменить каждую группу символов NN группой символов Nizhny Novgorod;
  7. удалить все символы, не являющимися буквами;
  8. распечатать все символы, расположенные между двумя запятыми;
  9. подсчитать число вхождений в строку группы символов abc;
  10. заменить все прописные латинские буквы одноименными строчными;
  11. удалить из каждой группы идущих подряд цифр нули;
  12. удалить из каждой группы идущих подряд цифр, все цифры, начиная с третьей;
  13. удалить из строки все запятые, предшествующие первой точке;
  14. преобразовать строку, удалив из нее каждый символ * и повторив каждый символ, отличный от *;
  15. выяснить, входят ли в строку все символы, входящие в слово STRING;
  16. проверить, является ли строка палиндромом (выражение, читающееся слева направо и справа налево одинаково);
  17. преобразовать строку так, чтобы сначала в ней шли все цифры, а потом все буквы исходной строки;
  18. выбрать из строки все буквы и отсортировать их в алфавитном порядке;
  19. заметь все русские буквы в строке их порядковыми номерами в русском алфавите;
  20. подсчитать частоту встречаемости каждой цифры в строке;
  21. подсчитать наибольшее число букв А, идущий подряд;
  22. реверсировать (расположить в обратном порядке) все символы стоки, расположенные до первой точки;
  23. разделить исходную строку на несколько строк длины к.
  24. определить содержит ли строка дату в виде хх.хх.хх;
  25. ввести строку, содержащую дату в формате хх-месяц-хх и преобразовать ее в формат хх.хх.хх

 




Поделиться с друзьями:


Дата добавления: 2014-10-31; Просмотров: 908; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.