Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2013, 21:43   #1
Breaknoise
Пользователь
 
Регистрация: 24.02.2011
Сообщений: 15
По умолчанию Строки

заранее прошу прощения за просьбу, но там делов на 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. Разбить полученную строку на несколько, взяв ; как разграничитель.

Последний раз редактировалось Breaknoise; 11.05.2013 в 21:10.
Breaknoise вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
допилить скрипт Mick_20 JavaScript, Ajax 0 01.05.2013 16:53
помогите изменить прогу на Turbo pascale оочень прошу koldun89 Помощь студентам 1 18.12.2009 14:34
Прошу протестить прогу Viteef Софт 14 21.06.2007 22:42