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

Строковый тип. Перевернуть строку - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перегрузка оператора *= http://www.cyberforum.ru/cpp-beginners/thread1040594.html
как для заданного класса point перегрузить оператор *= всеми возможными способами (член класса, друг класса)? P.S. оператор *= должен быть применен для двух объектов класса point, он осуществляет умножения соответствующих координат точек и запись полученных результатов в координаты первой точки class point { int *x, *y, *z; public: point(int c1 = 0, int c2 = 0, int c3 = 0) { x = new...
C++ Произведение парных чисел первого столбца матрицы помогите написать функцию пользователя, которая находит произведение парных отрицательных чисел первого столбца матрицы. http://www.cyberforum.ru/cpp-beginners/thread1040576.html
Какой класс подходит? C++
нужно из указанных классов перечислить те, объекты которых можно создавать без параметров (используя конструктор по умолчанию) /////////////////////////////////////////// class Journal { int pages; char* editor; int number; public: Journal(int p, char* ed, int num):pages (p), number (num)
C++ программа расшифровывающая сообщение
В строке слова зашифрованы, каждые из них записаны наоборот. Помогите написать программу. расшифровывающую сообщение.
C++ Даны основания и высоты двух равнобедренных трапеций http://www.cyberforum.ru/cpp-beginners/thread1040521.html
Даны основания и высоты двух равнобедренных трапеций. Найти сумму их периметров (Определить функцию для расчета периметров равнобедренной трапеции по ее основаниям и высоте).
C++ Векторы Добрый день, помогите пожалуйста решить задачку, в моей программе могут быть ошибки, т.к. в материале я полный 0. /*IV. Ðåàëèçîâàòü â âèäå ÊËÀÑÑÀ íàáîð ïîäïðîãðàìì äëÿ âûïîëíåíèÿ ñëåäóþùèõ îïåðàöèé íàä âåêòîðàìè: 1) ñëîæåíèå; 2) âû÷èòàíèå; 3) ñêàëÿðíîå óìíîæåíèå âåêòîðîâ; 4) óìíîæåíèå âåêòîðà íà ÷èñëî; 5) äëèíà âåêòîðà. Âåêòîð ïðåäñòàâèòü ñëåäóþùèì òèïîì: struct Vector {double X, Y;}; подробнее

Показать сообщение отдельно
reidaigo
6 / 6 / 0
Регистрация: 16.12.2012
Сообщений: 31

Строковый тип. Перевернуть строку - C++

13.12.2013, 23:49. Просмотров 1012. Ответов 2
Метки (Все метки)

Здраствуйте! Задача: ввести строку, перевернуть её, вывести полученную строку.
Задачу выполнил частично: переворачивается строка, содержащая не больше 2 слов, иначе - ошибка.
Собственно и вопрос вам: почему так получается? Как изменить код, чтобы можно было больше 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
#include "stdafx.h"
#include <iostream> 
 
using namespace std;
 
void reversit(char mas[]){
    int j=strlen(mas)-1; char buf; int i=0;
    do{
        buf= mas[i];
        mas[i]=mas[j];
        mas[j]=buf;
        i++;j--;
    } while (i!=j || i<j);
}
 
 
 
 
int main()
   {
setlocale(LC_ALL,"");
const int MAX=80;
char massiv[MAX];
cout << "Введите строку: ";
cin.get(massiv,MAX);
reversit(massiv);
 
cout <<endl<< massiv << endl;
    system("pause");
 return 0;
   }
Добавлено через 3 минуты
и вводимое второе слово не должно быть больше 3 символов, дабы избежать ошибки. Не понимаю почему так, прошу о помощи, спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru