Форум программистов, компьютерный форум CyberForum.ru

Сортировка слов - C++

Восстановить пароль Регистрация
 
tibeg
0 / 0 / 0
Регистрация: 01.08.2013
Сообщений: 97
22.10.2013, 22:37     Сортировка слов #1
Привет. Объясните пожалуйста код, немогу с ним разобраться(знаю что программа принимает строку выводит ее на экран и считает сумму наврное)
#include<stdio.h>
#include<string.h>
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void main()
{
 char s[100],d[100];
 int i=0,j=0,bw,ew,len;
 gets(s); len=strlen(s);
 while (i<len)
 {
   while((s[i]==' ')&&(i<len)) i++;
   bw=i;
   while((s[i]!=' ')&&(i<len)) i++;
   ew=i;
   strncpy(d,&s[bw],ew-bw+1);
   d[ew-bw+1]=0;
   if (bw<len)
    { j++;
      printf("%s\n",d);}
 }
printf("Vsego slov %d\n", j);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2013, 22:37     Сортировка слов
Посмотрите здесь:

C++ [c++]Сортировка слов по алфавиту.
C++ Сортировка слов по буквам
C++ Сортировка слов по алфавиту
C++ Сортировка списка слов
сортировка слов C++
C++ STL: Сортировка слов по количеству согласных букв; вывод слов, встречающихся в списке более одного раза
сортировка слов vector C++
Сортировка слов в массиве C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 16:08     Сортировка слов #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<stdio.h>
#include<string.h>
void main()
{
 char s[100],d[100];//массивы символов. Здесь хранятся строки
 int i=0,j=0,bw,ew,len; //объявляем переменные, некоторые обнуляем
//в переменной i хранится номер символа строки. Нумерация С НУЛЯ!
//в переменной j хранится количество слов
 gets(s);;//вводим строку с клавиатуры
 len=strlen(s) //в len записываем длину введенной строки
 while (i<len)//цикл
 {
   while((s[i]==' ')&&(i<len)) i++; //пока текущий символ пробел переходим к следующему символу
   bw=i;
   while((s[i]!=' ')&&(i<len)) i++; //пока текущий символ НЕ пробел переходим к следующему символу
   ew=i; //запоминаем позицию первого пробельного символа
   strncpy(d,&s[bw],ew-bw+1); //копируем в переменную D ЧАСТЬ строки s (если честно, я немного сомневаюсь в этой строке)
   d[ew-bw+1]=0;//последний символ строки \0 (правильней написать d[ew-bw+1]='\0';)
   if (bw<len)//если символ не последний то
    { j++; //увеличиваем счетчик слов
      printf("%s\n",d); //и выводим слово
    }
 }//конец цикла
printf("Vsego slov %d\n", j);//вывод
}
Yandex
Объявления
23.10.2013, 16:08     Сортировка слов
Ответ Создать тему
Опции темы

Текущее время: 11:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru