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

Переворачивание строки - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
.Malek.
5 / 5 / 0
Регистрация: 20.03.2011
Сообщений: 180
04.05.2011, 15:00     Переворачивание строки #1
Почему не работает?
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
26
27
28
29
30
31
//ex7_1.cpp
//переворачивает строку
#include <iostream.h>
#include <string.h> // strlen()
 
int main()
    {
    void reversit(char [] );  //прототип
    const int MAX =20;         //размер массива
    char str [MAX];            //строка
    cout <<"\nEnter stroka:";//получить строку от
                               //пользователя
    cin.get(str,MAX);
    reversit(str);             //перевернуть строку
    cout <<"Perevernuta9:";//и вывести ее
    cout <<str <<endl;
    return 0;
    }
//---------------------------------------------------------
//reversit()
//функция, переворачивающая строку, переданную в аргументе
void reversit(char s [] )
    {
    int len =strlen(s);        //найти длину строки
    for(int j =0;j <len/2;j++) //поменять все    //символы из первой половины
      {
      char temp =s [j];        //на символы
      s [j] ==s [len-j-1];     //из второй половины
      s [len-j-1] ==temp;
      }
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2011, 15:00     Переворачивание строки
Посмотрите здесь:

C++ переворачивание строки
C++ Как первые два символа строки переставить в конец этой строки?
C++ Зеркальное переворачивание массива
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка содер-жится в ней C++
C++ Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
04.05.2011, 15:06     Переворачивание строки #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
26
27
28
29
30
31
//ex7_1.cpp
//переворачивает строку
#include <iostream.h>
#include <string.h> // strlen()
 
int main()
    {
    void reversit(char [] );  //прототип
    const int MAX =20;         //размер массива
    char str [MAX];            //строка
    cout <<"\nEnter stroka:";//получить строку от
                               //пользователя
    cin.getline(str,MAX);
    reversit(str);             //перевернуть строку
    cout <<"Perevernuta9:";//и вывести ее
    cout <<str <<endl;
    return 0;
    }
//---------------------------------------------------------
//reversit()
//функция, переворачивающая строку, переданную в аргументе
void reversit(char *s)
    {
    int len =strlen(s);        //найти длину строки
    for(int j =0;j <len/2;j++) //поменять все    //символы из первой половины
      {
      char temp =s [j];        //на символы
      s [j] =s [len-j-1];     //из второй половины
      s [len-j-1] =temp;
      }
    }
Добавлено через 1 минуту
На 28 и 29-ой строках, должно быть не сравнение, а присваевание.
.Malek.
5 / 5 / 0
Регистрация: 20.03.2011
Сообщений: 180
04.05.2011, 15:12  [ТС]     Переворачивание строки #3
а для чего в 28 вычитаем -1
slice
32 / 75 / 4
Регистрация: 04.11.2010
Сообщений: 249
04.05.2011, 15:15     Переворачивание строки #4
Цитата Сообщение от .Malek. Посмотреть сообщение
а для чего в 28 вычитаем -1
потому что последний символ строки это s[len-1] а не s[len]
Yandex
Объявления
04.05.2011, 15:15     Переворачивание строки
Ответ Создать тему
Опции темы

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