заранее прошу прощения за просьбу, но там делов на 5 минут) есть пример проги:
Код | #include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> void main() { char *str, str1[]="Эта тестовая- строка будет обрабатываться", *stemp; char *c="-", *c1="строка", *c2="последовательность"; int n; clrscr(); printf("Исходная строка ===> %s\n", str1); // удаление 1 символа начиная с 1 го символа в "с" str=strstr(str1,c); memmove(str,str+1,strlen(str)); printf("строка после копирования ===> %s\n", str1); // замена в строке str1 последовательности c1 на c2 stemp=(char *) calloc(strlen(str1)+strlen(c2)+1, 1); printf("stemp ==> %s\n",stemp); str=strstr(str1,c1); strncpy(stemp,str1,strlen(str1)-strlen(str)); printf("stemp ==> %s\n",stemp); memcpy(stemp+strlen(stemp),c2,strlen(c2)+1); printf("stemp ==> %s\n",stemp); // memcpy(stemp+strlen(stemp),str+strlen(c1),strlen(str)+1); memcpy(stemp+strlen(stemp),str+strlen(c1),strlen(str)- strlen(c1)+1); printf("stemp ==> %s\n",stemp); for (n=0; stemp[n] != '\б' ; n++); printf( "Первое б находится в %d позиции\n", n+1); // разбитие на строки, разделитель пробел str = strtok(stemp," "); while (str != NULL) { printf("%s\n", str); str = strtok(NULL," "); } } /* Резудьтаты работы программы Исходная строка ===> Эта тестовая- строка будет обрабатываться строка после копирования ===> Эта тестовая строка будет обрабатываться stemp ==> stemp ==> Эта тестовая stemp ==> Эта тестовая последовательность stemp ==> Эта тестовая последовательность будет обрабатываться Первое б находится в 33 позиции Эта тестовая последовательность будет обрабатываться */
|
задание: 1. Напечатать строку: printf(""ПРОСМОТРЕТЬ МАССИВ"); break; 2. Напечатать символ ", который должен быть удален из строки и новую строку. 3. Заменить одну последовательность букв другой (printf на cprintf) 4. Разбить полученную строку на несколько, взяв ; как разграничитель. |