Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Ch1lly
0 / 0 / 0
Регистрация: 22.10.2014
Сообщений: 23
1

Нужно "перевернуть" массив (чтобы последний элемент стал первым)

05.11.2014, 10:35. Просмотров 702. Ответов 5
Метки нет (Все метки)

Господа, как перевернуть массив?Чтобы последний элемент стал первым и тд. Запутался в элементах, выдает непонятно что.
Числа в массиве рандомные, и не важно сколько будет элементов ( и будет ли это нечетное или четное кол-во)
Спасибо
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2014, 10:35
Ответы с готовыми решениями:

"Перевернуть" в строке все слова (Например: "Жили были" в "илиЖ илыб")
"Перевернуть" в строке все слова. (Например: "Жили были дед и баба" - "илиЖ илиб дед и абаб")

Если встречается последний символ слова "е", поменять его на "я"
Вот проблема тут появилась и не понимаю как её решить: нужно чтобы если встречается последний...

Что нужно знать, чтобы написать игру "Змейка"
Подскажите пожалуйста,хочу написать игру "змейка" кое-какие наработки уже есть,но пока весьма...

При использовании system ("telnet ") нужно чтобы не останавливало программу.
Привет всем. Я хочу использовать в программе на Си функцию командной строки system ("telnet ")....

Создать запись "Двигатель", которая содержит элементы "Название", "Мощность", "Скорость", "Цена"
Создать запись "Двигатель", которая содержит элементы "Название", "Мощность", "Скорость",...

5
XZentus
201 / 199 / 65
Регистрация: 06.10.2013
Сообщений: 552
05.11.2014, 10:42 2
C
1
2
3
4
5
6
7
8
9
10
int i, /*индекс для цикла*/
    arrsize, /*кол-во элементов в массиве*/
    temp; //для временного хранения значения
int *arr; //собственно массив
/*...*/
for(i = 0; i < arrsize/2; i += 1) {
    temp = arr[i];
    arr[i] = arr[arrsize - i - 1];
    arr[arrsize - i - 1] = temp;
}
0
Vtulhu
423 / 377 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
06.11.2014, 15:44 3
C
1
2
3
4
5
6
7
8
9
void reverse(int* arr, unsigned int siz)
{
    int* end = arr + siz;
    while( arr < --end ) {
        int t = *end;
        *end = *arr;
        *arr++ = t;
    }
}
0
Tmv2701
0 / 0 / 2
Регистрация: 06.11.2014
Сообщений: 9
06.11.2014, 15:49 4
А вариант скопипастить массив во временный, а потом из временного записывать в основной в обратном порядке (то есть первому элементу присвоить значение n-ого, 2-му (n-1)-го) не подойдёт?
0
_Ivana
3239 / 1873 / 235
Регистрация: 01.03.2013
Сообщений: 5,112
Записей в блоге: 13
06.11.2014, 15:59 5
Подойдет конечно. Но память надо выделять, потом освобождать, а зачем с этим возиться, если массив отлично реверсится в своей же области памяти.
0
Boleon
Guardian of Asgaard
373 / 316 / 197
Регистрация: 11.11.2013
Сообщений: 1,046
Завершенные тесты: 1
07.11.2014, 16:57 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
#include <stdio.h>
 
void reverse(int array[], int size) {
    for ( int i = 0, j = size-1; i < j; i++, j-- ) {
        int temp = array[i];
        
        array[i] = array[j];
        array[j] = temp;
    }
}
 
int main() {
    const int size = 7;
    int array[] = {1, 2, 3, 4, 5, 6, 7};
    
    reverse(array, size);
    
    for ( int i = 0; i < size; i++ ) {
        printf("%d ", array[i]);
    }
    
    return 0;
}
Код
@output:
7 6 5 4 3 2 1
0
07.11.2014, 16:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2014, 16:57

Нужно сделать игру "Крестики-Нолики" используя двухмерный массив.
Добрый вечер, ребята. Нам задали очень интесное задание и я думаю что и вам будет интересно мне...

нужно перевести из си++ в си, не совсем понимаю как выглядит строка в си cout<<"2 цифра равна "<<(a/1000)%10<<"\n";
#include &lt;iostream&gt; using namespace std; int main() { setlocale (LC_ALL, &quot;RUS&quot;); ...

Найти самое длинное слово, начинающееся с буквы "Я" и перевернуть его
Дана строка символов. Найти самый длинный слова начинаюший с буквы &quot;Я&quot; и вывести его н наборот...


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

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

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