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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2015, 09:35   #1
AgitoLeviafan
Пользователь
 
Регистрация: 21.11.2015
Сообщений: 20
По умолчанию В чем ошибка?

Функция программы :
Определить в строке количество предложений. Если предложений более одного, копировать второе предложение в отдельную строку и вывести ее содержимое на экран. В новой строке первое слова поставить последним.

Сделал:
Код:
#include <iostream>
#include <string.h>
 
int main()
{

    int i,k = 0,j,t,b,kol;
    char s1[35] = "Hello.My Name is Vasya?Net!Alina!", s2[100];
   

    
    for(i=0,kol=0;i<strlen(s1);i++)
    {if(s1[i]=='.'||
    s1[i]=='!'||
    s1[i]=='?')kol++;
    if(kol==0)t=i+2;
    if(kol==1)b=i+2;}
    
    for(j=0,i=t;i<b;i++,j++){
	s2[j]=s1[i];
    s2[j]='\0';}
    
    char* slovo [100];
    
    for(i=0,j=0;i<strlen(s2);i++)
    
	if(s2[i]==' ')
	{
	slovo[k][j]='\1';
	j=0;
	k++;
	}

    else
    {slovo[k][j]=s2[i];
    j++;}
	strcpy(s2," ");

    for(i=1;i<i-1;i++)
	{
	strcat(s2, slovo[i] );
	strcat(s2," ");
	}
     strcat(s2,slovo [0] );
	 strcat(s2,".");
    std::cout<<s2;
    system("pause");
    return 0;
}
Копирует строку в другую правильно,а дальше (Где ввод массива слов slovo [100]),находится ошибка ,помогите пожалуйста доделать .

Последний раз редактировалось Stilet; 29.11.2015 в 09:49.
AgitoLeviafan вне форума Ответить с цитированием
Старый 29.11.2015, 09:40   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Код:
char* slovo [100];
Указатели есть. Память кто выделять будет?
p51x вне форума Ответить с цитированием
Старый 29.11.2015, 09:48   #3
AgitoLeviafan
Пользователь
 
Регистрация: 21.11.2015
Сообщений: 20
По умолчанию

Изначально там просто char , но без char *,он выдает ошибку в strcat(s2, slovo[i] ); и strcat(s2,slovo [0] );
AgitoLeviafan вне форума Ответить с цитированием
Старый 29.11.2015, 09:50   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
AgitoLeviafan
Не хочешь сделать на С++? Так например: http://www.programmersforum.ru/showthread.php?t=284522
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.11.2015, 09:56   #5
AgitoLeviafan
Пользователь
 
Регистрация: 21.11.2015
Сообщений: 20
По умолчанию

Да это тоже С++,просто заново переделывать не хочу,работы еще много.
AgitoLeviafan вне форума Ответить с цитированием
Старый 29.11.2015, 10:37   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Код:
но без char *,он выдает ошибку в strcat(s2, slovo[i] ); и strcat(s2,slovo [0] );
Ну тогда откройте для себя взятие адреса &
p51x вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В чем ошибка?? Blood_ghosT Общие вопросы C/C++ 14 06.06.2013 13:54
В чем ошибка?(С/С++) Borkot Помощь студентам 2 24.06.2012 12:45
в чем ошибка? Avvakymova Помощь студентам 3 28.05.2011 00:05
В ЧЕМ ОШИБКА? salmanbaz Общие вопросы C/C++ 5 11.01.2009 13:21