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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2012, 13:26   #1
artpro
 
Регистрация: 13.12.2011
Сообщений: 3
По умолчанию С++ строковые массивы,неверная работа функции

Доброго времени суток,не бы подсказать ошибку в программе на с++(строковые массивы)?

zad2 работает не правильно т е удаляет все повторяющееся слова
/*задача №1. Написать и протестировать функцию подсчёта слов, начинающихся с конкретной буквы, в строке.
задача №2. Ввести строку, слова в которой разделены пробелами и запятыми.
Распечатать эту строку, удалив из нее те слова, которые встретились в ней более одного раза
*/
Код:
#include<iostream>
using namespace std;
#include"Rus.h"
#define _USE_MATH_DEFINES
#include<math.h>
#include<time.h>
#include<string.h>
int zad1(char* str,char N);
int zad2(char* str);

int zad1(char* str,char N)

{
int i,S=0;
for(i=0;str[i]!=0;i++)
//if(str[i]==N)//jgg
if(str[i]==' ')
{
if(str[i+1]==N)
{
S++;

for(;str[i]!=32;i++);
}
}
return S;
}
///////////////////////////////////////////
int zad2(char* str)
{ 
char* sl=new char[80];
char* k;
int i=0;
int in;
int ik; 
int n=strlen(str);
int j=0;
while(i<n)
{
in=i;
while(str[i]!=' ' && i<strlen(str))
{
sl[j]=str[i];
i++;
j++;
}
ik=i;
sl[j]='\0';
k=strstr(str, sl);
if(k!=NULL)
strcpy(k,k+strlen(sl));
i=ik+1;
}
delete []sl;
return 0;
}
//////////////////////////////
int main(void)
{

int S, G;
char N, str[80];//, str1[80];
cout<<Rus("введите строку: ");
cin.getline(str,80);
cout<<Rus("введите букву: ");
cin>>N;
S=zad1(str,N);
cout<<S;
//cin.getline(str1,80);
G=zad2(str);
cout<<endl;
cout<<Rus("результат: ")<<str<<endl;
//cout<<S;
return 0;
}

Последний раз редактировалось artpro; 06.01.2012 в 13:30.
artpro вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
строковые функции pooiu Паскаль, Turbo Pascal, PascalABC.NET 3 27.01.2011 14:15
неверная работа функции в Delphi ИльяМалиновский Общие вопросы Delphi 5 31.12.2009 15:07
Строковые массивы vanilla_bear Помощь студентам 2 25.12.2009 20:53
шаблонные строковые функции MrKarapuz Общие вопросы C/C++ 7 09.11.2009 15:07