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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.08.2010, 14:50   #1
N.o.n.a.m.e
 
Регистрация: 12.08.2010
Сообщений: 6
Вопрос Подсчет букв в словах (Си)

Здравствуйте.
Есть простая программка для подсчета слов. Как сделать так, чтобы в конце программа выводила количество букв в каждом слове.
Например:
Word1, symbols - 5
Word2, symbols - 6 и т.д.
Заранее благодарен.
Код:
#define  YES  1
#define  NO   0
main()
{
   int c, nw, inword;
   inword = NO;
   nw = 0;
   while((c = getchar()) !='\n')  {
       if (c ==' ')
            inword = NO;
       else if (inword == NO)  {
    inword = YES;
            ++nw;
   printf("Word%d\n",nw);
}
}
printf("Vsego slov %d", nw);
   system("pause");
}

Последний раз редактировалось N.o.n.a.m.e; 12.08.2010 в 15:12.
N.o.n.a.m.e вне форума Ответить с цитированием
Старый 12.08.2010, 15:23   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
main()
{
   int c, nw, inword;
   inword = 0;
   nw = 0;
   while((c = getchar()) !='\n')  {
       if (c!=' ') {
            inword++
            ++nw;
      }
   printf("Word%d слов %d \n",nw,inword);
   inword=0;
}
}
printf("Vsego slov %d", nw);
   system("pause");
}
Подойдет?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.08.2010, 16:49   #3
N.o.n.a.m.e
 
Регистрация: 12.08.2010
Сообщений: 6
По умолчанию

Не совсем. Возможно я не точно объяснил суть проблемы.
Например пользователь вводит строчку:
Слово1 слово22 слов3
Надо, что бы программа выводила:
слово1 - 6 букв
слово2 - 7 букв
слово3 - 5 букв
N.o.n.a.m.e вне форума Ответить с цитированием
Старый 12.08.2010, 16:59   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Хорошо, чуть чуть переиграю:
Код:
	char s[255]="Слово1 слово22 слов3 ",k[255]="";
	//scanf("%s",&s);
	int w=0,ss=0;
	for(int i=0;s[i]!=0;i++){
		if(s[i]==' '){
			k[w+1]=0;
			printf("%s = %d\n",k,w);
			w=0;
			ss++;
		} else {
			k[w++]=s[i];
		}
	}
	printf("words = %d",ss);
	getchar();
	return 0;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.08.2010, 17:01   #5
N.o.n.a.m.e
 
Регистрация: 12.08.2010
Сообщений: 6
По умолчанию

Спасибо большое!
N.o.n.a.m.e вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В тех словах, которые оканчиваются сочетанием букв “ing”, заменить это окончание на “ed”. Sh@rky Паскаль, Turbo Pascal, PascalABC.NET 8 20.12.2015 18:23
Инверсия в словах Lag Общие вопросы C/C++ 4 02.05.2010 15:52
Pascal. на подсчет букв. Quiz Помощь студентам 10 15.01.2009 23:02
Подсчет русских и английских букв в текстовом файле. Ветас Помощь студентам 6 15.01.2009 22:08