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

Развернуть массив, не используя дополнительные массивы и переменные - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Все числа X с N-ым количеством неповторяющихся цифр http://www.cyberforum.ru/cpp-beginners/thread261136.html
Доброе время суток. С Паскаля перехожу на C/C++ и по сути это первая задача которую мне предстоит решить. Задача: Ввести число N и вывести все N значные числа с разными цифрами тоесть, если N=1,то 0...
C++ Как правильно прервать/возобновить цикл Такая вот проблема: есть часто встречающаяся функция ввода вещественного массива (как правило, большого). При вводе не цифры приходится все начинать сначала, то есть, необходимо ввести проверку на... http://www.cyberforum.ru/cpp-beginners/thread261131.html
Многопоточность (вычисление корня квадратного уравнения, используя несколько независимых потоков) C++
Уважаемые программисты! Сможет ли кто-нибудь хотя бы примерно объяснить, как реализовать, например, вычисление корня квадратного уравнения, используя несколько независимых потоков. Программа должна...
многомерные массивы C++
1.Даны прямоугольные матрицы А та В размерностью NхM. Вычислить элементы матрицы С по формуле 2.Дана прямоугольная матрица А размерностью NхM. Распечатать суму элементов каждого столбца и каждой...
C++ Прямая и окружность http://www.cyberforum.ru/cpp-beginners/thread261101.html
Есть прямая, заданая уравнением Ax+By+C=0 И окружность с координатами центра и радиусом Нужно найти координаты точек пересечения если таковы существуют. Находил решения, если центр окружности...
C++ Массив, расположение элементов по усовию #include <cstdlib> #include <iostream> #include <cmath> #include <clocale> using namespace std; int main(int argc, char *argv) { setlocale (LC_CTYPE, "rus"); //Условие: //Преобразовать... подробнее

Показать сообщение отдельно
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
21.03.2011, 14:25
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
void _reverse(int *first, int len)
{
  len--;
  for(int i = 0; i < len / 2 + 1; ++i){
    first[i] = first[i] ^ first[len - i];
    first[len - i] = first[i] ^ first[len - i];
    first[i] = first[i] ^ first[len - i];
  }
}
 
int main(void){
  int arr[4] = {4, 3, 2, 1};
  _reverse(arr, 4);
  for(int i = 0; i < 4; ++i)
    printf("%d ", arr[i]);
  return 0;
}
Без доп. памяти.
3
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru