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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2010, 08:50   #1
kenwood2010
Пользователь
 
Регистрация: 26.11.2010
Сообщений: 97
По умолчанию С++

Помогите разобраться.
Такая задача имеется массив:
char str[60] - который содержит в себе следующие строки:
На входе:
qwerty asdfg zxcvn qwerty asdfg
необходимо убрать из массива повторяющиеся слова, т.е на выходе:
qwerty asdfg zxcvn.
как это сделать помогите пожалуйста!
strcmp помогает но я не могу вывести первое слово которое в дальнейшем повториться.

(это то мне и надо решить)
вот как делаю я:

Код:
#include <iostream.h>
#include <conio.h>
#include <string.h>

void main()
{
clrscr();
int i,j,k;
int c=0;
const n=4;
char s[20];
char s1[20];
char str[n+1][10];
char rez[100];

for(i=0;i<n;i++)
{
cout<<"Vvedite word: ";
cin.getline(s,19);
strcpy(str[i],s);
}

for(j=0; j<n;j++)
{
cout<<endl<<str[j];
}
for (i=0;i<sizeof(s);i++) {s[i] = '\0';}
for (i=0;i<sizeof(s1);i++) {s1[i] = '\0';}
for (i=0;i<sizeof(rez);i++) {rez[i] = '\0';}



for(i = 0; i < n; i++)
{
for(j = 1;j < n; j++)
{
strcpy(s,str[i]);
strcpy(s1,str[j]);
if(strcmp(s, s1) == 0)
{
for (k = 0; k < sizeof(s); k++) {s[k] = '\0'; }
}
else
{
if(c==i)
{
strcat(rez, s);
strcat(rez," ");
cout<<endl<<"Loop: "<<i;
c++;
}
}
}
}
cout<<endl<<"Rez: "<<rez;
getch();
}
kenwood20072@rambler.ru ICQ: 701 302 135. (Программирование на C++, С. Решение задач по физике)
kenwood2010 вне форума Ответить с цитированием
Старый 15.12.2010, 10:44   #2
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

http://www.cplusplus.com/reference/algorithm/unique/
Cpluser вне форума Ответить с цитированием
Старый 16.12.2010, 04:39   #3
kenwood2010
Пользователь
 
Регистрация: 26.11.2010
Сообщений: 97
По умолчанию

всем спасибо решение найдено!
kenwood20072@rambler.ru ICQ: 701 302 135. (Программирование на C++, С. Решение задач по физике)
kenwood2010 вне форума Ответить с цитированием
Ответ


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