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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2010, 14:42   #11
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Не стал смотреть где именно ты сделал ошибку, но вот этот код работает нормально, для любой вариции составления слов и расстановки пробелов...
Код:
#include <string.h>
#include <conio.h>
#include <ctype.h>
void main(){
/*объявление переменных*/
char temp[]="  r   ababab       ababbaa     babaaa  abbaaaa   a   ";
char st[255]="";//обработанная строка максимум 255 символов
char mas[50][50]; //50 слов по 50 символов максимум
int i=0,j;//счетчик
int t=0;//счетчик массива

/*удаляем лишние пробелы*/
while (temp[i]==' ') i++;
for(;i<strlen(temp)-1;i++) 
{
 if ((temp[i]==' ')&&(temp[i+1]==' ')) continue; 
 else
 {st[t]=temp[i]; t++;}
}
if (temp[strlen(temp)-1]!=' ')
   st[t]=temp[i];

/*заносим слова в массив*/
t=0; j=0;
for(i=0;i<strlen(st);i++)
{
	if (st[i]==' ')
	{
		t++; j=0; i++;
		while ((st[i]!=' ') && (i<strlen(st)))
		{
			mas[t][j]=st[i];
			j++; i++;
		}
		mas[t][j]='\0';i--;
	}
	else
	{
		while ((st[i]!=' ') && (i<strlen(st)))
		{
			mas[t][j]=st[i];
			j++; i++;
		}
		mas[t][j]='\0';i--;
	}

}
/*выводим количество слов*/
printf("Kol-vo slov = %d",t+1);
getch();//ожидаем действий пользователя
}
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 13.05.2010, 15:15   #12
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
Сообщение от mrChester Посмотреть сообщение
этот код работает нормально, для любой вариции составления слов и расстановки пробелов...
char temp[]=" "; попробуй
и
char temp[]="";
rrrFer вне форума Ответить с цитированием
Старый 13.05.2010, 15:27   #13
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Извиняюсь
Но в этом случае уже нет ни одного слова, поэтому нет смысла вводить это слово и даже смотреть этот вариант лень
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удалять лишние пробелы из строки eduard17 Помощь студентам 4 19.02.2010 20:42
Убрать лишние пробелы из строки SoftKoc Общие вопросы Delphi 3 03.12.2009 23:54
Удалить лишние пробелы [C++] StudeHt Помощь студентам 2 20.05.2009 23:12
Удалить лишние пробелы Иван 883 Паскаль, Turbo Pascal, PascalABC.NET 5 06.04.2009 22:45