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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2009, 18:32   #1
Diamond2107
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 76
Вопрос Си++. Строки.

Добрый вечер)..у меня к вам всего лишь небольшой вопрос..дана такая задача: разработать программу, которая для заданной строки s удваивает каждое вхождение заданного символа x.
Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

char str[80];
int main()
{
int i;
int x;
puts ("vvedite stroky");
gets (str);
{
printf("vvedite x: ", x);
scanf("%d", &x);
}
for (i=0; i<strlen(str); i++)
        if (str[i]=x)....... ;
printf ("%s\n", str);
printf ("%d\n", k);
system("PAUSE");
return 0;
}
как я понимаю это вот так происходит..не могли бы Вы подсказать, есть ли функция для удваивания элемента..если нет, то как это можно выполнить?
Diamond2107 вне форума Ответить с цитированием
Старый 08.12.2009, 19:15   #2
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

как я понял,например:
введите строку: мама папа
введите символ: а
ответ: маамаа паапаа

так?
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Старый 08.12.2009, 19:18   #3
Diamond2107
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 76
По умолчанию

Столько книжек просмотрела..нет функции копирующей отдельный элемент строки..может как-то по другому..посмотрите пожалуйста((
Diamond2107 вне форума Ответить с цитированием
Старый 08.12.2009, 19:20   #4
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

char str[80];
int main()
{
int i;
char x;
puts ("vvedite stroky");
gets (str);
printf("vvedite x: ", x);
scanf("%c", &x);
for (i=0; i<strlen(str); i++){
if(str[i]==x){
printf ("%c%c", str[i],str[i]); }
else
printf ("%c", str[i]); }
return 0;
}

вот,что получилось!
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Старый 08.12.2009, 19:20   #5
Diamond2107
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 76
По умолчанию

Да, Вы правильно поняли))
Diamond2107 вне форума Ответить с цитированием
Старый 08.12.2009, 19:52   #6
Diamond2107
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 76
По умолчанию

Спасибо большое за помощь))все оказалось проще, чем я думала))
Diamond2107 вне форума Ответить с цитированием
Старый 08.12.2009, 19:56   #7
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

Не за что!
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10
Строки. Как вывести часть строки? Anfall Общие вопросы Delphi 7 26.02.2009 09:10
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй gotex Помощь студентам 4 08.05.2008 02:27
Строки furian Общие вопросы C/C++ 15 19.12.2007 20:15
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. vitalik007 Помощь студентам 1 25.09.2007 20:45