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

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

Войти
Регистрация
Восстановить пароль
 
z.a.m
49 / 0 / 1
Регистрация: 17.10.2010
Сообщений: 57
#1

Как поменять местами элементы строки - C++

20.03.2011, 18:31. Просмотров 1228. Ответов 1
Метки нет (Все метки)

Собственно сабж вот в чём, как поменять местами элементы в строке, меняя только адрес.
Вот функция, где str - адрес первого элемента строки, n - количество элементов:
C++
1
2
3
4
5
6
7
8
9
10
void gaz(char *str, int n)
{
        char p;
        for (int i=0, j=n-1; i<j; i++, j--)
        {
                p=*(str+j);
                *(str+j)=*(str+i);
                *(str+i)=p;
        }
}
т.е. мне нельзя использовать индексы. Нужно просто писать str++ или str--
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.03.2011, 18:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как поменять местами элементы строки (C++):

Поменять местами строки матриц, содержащие максимальные элементы - C++
Ввести две матрицы действительных чисел 4х5. Поменять местами строки матриц, содержащие максимальные элементы.Мб кто-то знает :?

Поменять в матрице местами максимальный и минимальный элементы каждой строки - C++
Данная матрица размера M x N. Преобразовать матрицу, поменяв местами минимальный и максимальный элемент в каждой строке

Поменять местами строки, содержащие минимальные и максимальные элементы матрицы - C++
Дана матрица размером М х N. Поменять местами строки, содержащие минимальные и максимальные элементы матрицы.

Массив: В таблице поменять местами элементы первой и последней строки - C++
Задано таблицу А, где і=1,2,3...n, j=1,2,3...n. В этой таблице поменять местами элементы первого и последнего строк Прекратить плодить...

Поменять местами строки, содержащие минимальный и максимальный элементы матрицы - C++
Дана матрица размера 5х10. Поменять местами строки, содержащие минимальный и максимальный элементы матрицы.

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

1
igorrr37
1647 / 1275 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
20.03.2011, 19:30 #2
C++
1
2
3
4
5
6
7
8
void gaz(char *str, int n){
    char p;
    for (char *sec=str+n-1; str<sec; str++, sec--){
        p=*str;
        *str=*sec;
        *sec=p;
    }
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.03.2011, 19:30
Привет! Вот еще темы с ответами:

В прямоугольной матрицы поменять местами строки, содержащие максимальный и минимальный ее элементы - C++
В прямоугольной матрицы поменять местами строки, содержащие максимальный и минимальный ее элементы. Большое вам спасибо!!!

В матрице А(4-строки, 3-столбца) поменять местами наибольшие элементы в первом и третьем столбцах - C++
В матрице А(4-строки, 3-столбца) поменять местами наибольшие элементы в первом и третьем столбцах

Найти наибольший и наименьший элементы каждой строки прямоугольной матрицы и поменять их местами - C++
Помогите написать программу. Самостоятельно не получается никак.

Поменять местами первую и последнюю строки матрицы, которые содержат одинаковые элементы - C++
1. Дана целочисленная прямоугольная матрица. Поменять местами первую и последнюю строки матрицы, которые содержат одинаковые элементы. 2....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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