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

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

Войти
Регистрация
Восстановить пароль
 
HEYALL
0 / 0 / 0
Регистрация: 19.10.2011
Сообщений: 9
#1

Задача на строки.ПОмогите решить - C++

31.10.2011, 15:27. Просмотров 357. Ответов 9
Метки нет (Все метки)

Помогите пожалуйста решить задачу
Дана строка.Вывести данную строку задом наперед
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2011, 15:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача на строки.ПОмогите решить (C++):

Помогите решить - C++
ЭТО ЗАДАНИЕ Position of "-1". In the given NxM matrix find the LAST position of the minus one(-1). If it will be no "-1" value in...

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

помогите решить - C++
1- составить прогу для решения уравнения см фото. примерное решение ,но тут проблема в уравнении int main() { float a, b,...

Помогите решить... - C++
Некий чиновник купил лошадей и быков на 1770 талеров. За каждую лошадь он уплотил по 31 талеру, а за каждого быка - по 21 телеру. Сколько...

Помогите решить ... - C++
Помогите решить 2-е задачи ... или дайте алгоритм решения ... 1)Составьте программу, которая бы по году рождения определяла знак по...

Помогите решить в С++ - C++
Array18. Дан целочисленный массив размера N. Определить максимальное количество его одинаковых элементов. Matrix18. Дана целочисленная...

9
amor1k
Студент
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
31.10.2011, 15:35 #2
ну тип такого)
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"rus");
    char a[] = "Строка";
    for(int i = sizeof(a) - 1; i >= 0; i--)
        cout << a[i];
    system("pause");    
}
0
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 15:40 #3
Цитата Сообщение от HEYALL Посмотреть сообщение
Вывести данную строку задом наперед
- что под этим понимается - поменять порядок слов на обратный?

Если просто символы наоборто пропечатать, дык это просто
C
1
2
char str[] = "Test";
printf("%s",strrev(str));
Для string если не изменяет память есть метод string::reverse().

HEYALL, жду от Вас ответа + указание языка Си или С++?
0
HEYALL
0 / 0 / 0
Регистрация: 19.10.2011
Сообщений: 9
31.10.2011, 15:43  [ТС] #4
В Си надо выполнить

Добавлено через 58 секунд
Да надо чтобы строка показывалась задом на перед
0
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
31.10.2011, 15:45 #5
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
strrev
в стандарте нет, только в мелкомягких компиляторах
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Для string если не изменяет память есть метод string::reverse().
нету
0
Nameless One
Эксперт С++
5774 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
31.10.2011, 16:07 #6
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 <stdio.h>
#include <stdlib.h>
 
void print_reversed(const char*);
 
int main(int argc, char* argv[])
{
    size_t i;
 
    if(argc == 1)
    fprintf(stderr,
        "Usage: %s STRING1 [STRING2...]\n", *argv), exit(EXIT_FAILURE);
 
    for(i = 1; i < argc; ++i)
    {
    printf("%s: ", argv[i]);
    print_reversed(argv[i]);
    putchar('\n');
    }
 
    exit(EXIT_SUCCESS);
}
 
void print_reversed(const char* pch)
{
    if(*pch == '\0')
    return;
 
    print_reversed(pch + 1);
    putchar(*pch);
}
0
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 16:20 #7
Цитата Сообщение от HEYALL Посмотреть сообщение
В Си надо выполнить
Добавлено через 58 секунд
Да надо чтобы строка показывалась задом на перед
- вот на Си
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h> 
#include <string.h>
#include <stdlib.h>
 
int main()
{   
    long i,nWords = 0;
    char chr;
    char str[1024];//èñõîäГ*Г*Гї ñòðîêГ*
    char buf[1024];//ГЎГіГґГґГҐГ°
    char **Words;//ÓêГ*Г§Г*òåëü Г*Г* Г¬Г*Г±Г±ГЁГў ñëîâ ñòðîêè
    char delim[] = " ,.!?;";//ГђГ*çäåëèòåëè ìåæäó ñëîâГ*ìè
    printf("\tEnter input string\n");
    scanf("%[^\n]%c",str,&chr);//Г‚ str ГІГ® Г·ГІГ® ââåëè Гў chr - '\n' îò ââîäГ*
    sprintf(buf,"%s",str);
    char * word = strtok(buf,delim);
    if(!word)
        printf("String not contain words or empty!\n");
    else
    {
        //Ñ÷èòГ*ГҐГ¬ ÷èñëî ñëîâ
        while(word)
        {
            nWords++;
            word = strtok(NULL,delim);
        }
        Words = (char **)malloc(nWords*sizeof(char *));
        word = strtok(str,delim);
        i = 0;
        while(word)
        {
            //Êîïèðóåì ñëîâГ* Гў Words
            Words[i] = (char *)malloc(strlen(word));
            sprintf(Words[i],"%s",word);
            word = strtok(NULL,delim);
            i++;
        }
        printf("\tReverse string\n");
        for(i = nWords - 1;0 <= i; i--)
            printf("%s ",Words[i]);
        printf("\n");
    }
    system("pause");
    return 0;
}
1
Миниатюры
Задача на строки.ПОмогите решить  
-=ЮрА=-
31.10.2011, 16:24
  #8

Не по теме:

Net_Wanderer, по поводу string::reverse() спорить не буду, в своих программах использую либо char * либо CString для CString::MakeReverse - есть, вот и подумал что string снабжён подобным функционалом...

0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
31.10.2011, 16:26 #9
Можно так сделать
C++
1
std::reverse( str.begin(), str.end() );
Но это никак не метод string.

А можно так
C++
1
std::cout << std::string( str.rbegin(), str.rend() );
1
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 16:29 #10
diagon, спасибо, буду знать теперь и для string
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2011, 16:29
Привет! Вот еще темы с ответами:

помогите решить)) - C++
привет всем! помогите решить (x mod3)-1; я новичек и еще много не доганяю если можно распишите с коментариями спс.

помогите решить - C++
Написать и протестировать программу STREND (str 1,str 2) которая возвращает 1,если строка str 1 расположена в конце строки str 2 ,и 0-в...

Помогите решить . - C++
C++ Вести три действительных числа от -10 до 10. Возвести в квадрат те из них, значения которых неотрицательны, и в третью степень...

Помогите решить контрольную - C++
Это работа к допуску к зачету по с++. Нужные мне задачи № 15 помечены. Сканы в файлах. Заранее спасибо за помощь.


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
31.10.2011, 16:29
Ответ Создать тему
Опции темы

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