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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Hellko
6 / 6 / 1
Регистрация: 17.11.2012
Сообщений: 65
#1

Вывести строку задом наперед - C++

09.03.2013, 20:21. Просмотров 948. Ответов 4
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
int main() {
    int len; char temp;
    cin>>len;
    cin.ignore();
    char *str = new char[len++];
    cin.getline(str,len);
    cout<<"Inverse string: ";
 
    for (int i=0; i<len/2; i++) {
        temp=str[len-i-1];
        str[len-i-1]=str[i];
        str[i]=temp;
    }
    cout<<str;
}
Не могу понять в чем трабла. помогите пожалуйста.

Не по теме:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
int main() {
    int len; char temp;
    cin>>len;
    cin.ignore();
    char *str = new char[len++];
    cin.getline(str,len);
    cout<<"Inverse string: ";
 
    for (int i=0; i<len/2; i++) {
        temp=str[len-i-1];
        str[len-i-1]=str[i];
        str[i]=temp;
    }
    cout<<str;
}

Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2013, 20:21     Вывести строку задом наперед
Посмотрите здесь:

Вывести строку задом наперед - C++
1)Пользователь вводит строку данных программа выводит из нее только цифры. 2)Вывести строку задам на перед. #include &lt;iostream&gt; ...

Вывести строку символов на экран задом наперед - C++
Дана строка символов. Вывести её на экран задом наперед. Использовать библиотеку string.h Добавлено через 3 минуты как я понимаю...

Написать строку задом наперед - C++
помогите пожалуйста отладить, задача написать строку задом наперед. Работает не правильно, что я не так сделал? Вот мой код: void...

Вывести последовательность слов задом наперед - C++
Задание: Дана строка, группу букв, разделенных пробелами (одним или больше) будем считать словами. Вывести последовательность слов задом...

Вывести буквы в словах строки задом-наперед - C++
я немного переделал под себя прогу которую сделали чтобы было понятно, у меня она потеряла смысл ,помогите разобраться? Вот я...

Вывести вписанное пользователем слово задом наперед - C++
Добрый день нужно вывести,вписанное пользователем слово задом наперед в C++ помогите как можно быстрей пожалуста,нужно использовать...

Вывести предложение, в котором каждое слово будет задом наперед - C++
Здравствуйте,нужна помощь в решении задачи на С++. Вывести предложение, в котором каждое слово будет задом наперед.Нельзя пользоваться...

Число задом наперед - C++
Помогите пожалуйста!!!! Задача. Перевернуть число, введенное с клавиатуры, задом на перед. Например, введено 12345, должны вывести 54321 ...

Напечатать заданное слово задом наперед - C++
Составить программу, которая печатает заданное слово задом наперед

чтение строки из файла задом наперед - C++
Нужна ваша помощь. Написал прогу которая выполняет определенные действия, но перед этим требуется ввести логин и пароль, если они...

Неправильный вывод (список выводится задом наперед) - C++
Здравствуйте. Не сильно разбираюсь в списках и хотел бы спросить, заполняю структуру значениями, все хорошо, но вывод на экран почему-то...

Перезаписать массив типа int задом наперед - C++
Здравствуйте, есть массив: int pos1 = {7,3,0}; мне нужно сделать так, чтоб массив имел такой вид: pos1 = {0,3,7}; как это можно...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Черный ворон
129 / 123 / 6
Регистрация: 31.01.2012
Сообщений: 435
09.03.2013, 20:49     Вывести строку задом наперед #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream.h>
 
#include <string.h>
int main(int argc, char* argv[])
{
string s;
getline(cin,s);
//cout<<s<<endl;
for (int i=s.length()-1; i>=0; i--) cout<<s[i];
cout<<endl;
system ("pause");
        return 0;
}
Hellko
6 / 6 / 1
Регистрация: 17.11.2012
Сообщений: 65
09.03.2013, 20:51  [ТС]     Вывести строку задом наперед #3
Цитата Сообщение от Черный ворон Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream.h>
 
#include <string.h>
int main(int argc, char* argv[])
{
string s;
getline(cin,s);
//cout<<s<<endl;
for (int i=s.length()-1; i>=0; i--) cout<<s[i];
cout<<endl;
system ("pause");
        return 0;
}
для строк мне нужно использовать массив чаров. и выводить в итоге всю строку целиком. такое задание.
Черный ворон
129 / 123 / 6
Регистрация: 31.01.2012
Сообщений: 435
09.03.2013, 21:01     Вывести строку задом наперед #4
тогда из твоего кода надо поправить второй цикл так:
C++
1
2
3
4
5
for (int i=0; i<len/2; i++) {
        temp=str[len-i-2];
        str[len-i-2]=str[i];
        str[i]=temp;
    }
ошибка в том что len-i-1 на первой итерации указывает на символ конца строки который записывается на первое место новой строки
Hellko
6 / 6 / 1
Регистрация: 17.11.2012
Сообщений: 65
09.03.2013, 21:04  [ТС]     Вывести строку задом наперед #5
Цитата Сообщение от Черный ворон Посмотреть сообщение
тогда из твоего кода надо поправить второй цикл так:
C++
1
2
3
4
5
for (int i=0; i<len/2; i++) {
        temp=str[len-i-2];
        str[len-i-2]=str[i];
        str[i]=temp;
    }
ошибка в том что len-i-1 на первой итерации указывает на символ конца строки который записывается на первое место новой строки
точно, -2. спасибо =)
Yandex
Объявления
09.03.2013, 21:04     Вывести строку задом наперед
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru