Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программа разбиения строк на слова 
:(
    Опции темы
odalun
Дата 22.4.2014, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 16.4.2014

Репутация: нет
Всего: нет



Здравствуйте, можете подробно описать что происходит в циклах этих двух одинаковых программ

Программа разбиения строк на слова с использованием указателей:

Код

#include<iostream>
#include<cstdio>
#include<locale>
#include<cstring>
using namespace std;

int main()
{
    setlocale(LC_ALL, "Russian");
    
    char str[80];
    char token[80];
    char *a, *b;
    
    cout << "Введите предложение: ";
    gets(str);
    a = str;
    
    while(*a)
    {    
        b = token;
    
        while(*a != ' ' && *a)
        {
            *b = *a;
            *a++; *b++; 
        }
        if (*a) a++;
        *b = '\0';
        cout << token << endl;
    }
}



Версия той же самой программы с использование индексирования массивов:

Код

#include<iostream>
#include<cstdio>
#include<locale>
using namespace std;

int main()
{    
    setlocale(LC_ALL, "Russian");
    
    char str[80];
    char token[80];
    int a, b;
    
    cout << "Введите предложение: ";
    gets(str);
    
    for(a=0; ; a++)
    {
        for(b=0;str[a] != ' ' && str[a]; b++, a++)
        token[b] = str[a]; 
        token[b] = '\0';
        cout << token << endl;
        if(!str[a]) break;
    }
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0839 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.