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

Динамическая память.Одномерный массив. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поразрядные поразрядное И (&) http://www.cyberforum.ru/cpp-beginners/thread423768.html
есть такой пример a%16 = a&(16-1) как преобразовать тогда тогда a%2, a%3, a%4, a%10? Добавлено через 13 минут извините за непонятное название, сначала хотел написать "поразрядные операции" :)
C++ Неявное преобразование типа данных через структуры Помню что вроде был в С/С++ такой прием, который позволял посмотреть на содержимое переменной одного типа с точки зрения другого типа. Через структуры это делалось. Заводим стуктуру с переменными... http://www.cyberforum.ru/cpp-beginners/thread423766.html
Автоматический ввод логина и пароля на сайте C++
Всех с Рождеством! Интернет ADSL и принцип коннекта таков: всё по DHCP приходит, но без доступа к инету. Чтобы включить доступ необходимо открыть браузер и попытаться что-либо открыть, происходит...
C++ Матрица пикселей в BMP
Программа: #include <iostream> #include <fstream> #include <cstdio> #include <windows.h> using namespace std; int main(int argc, char *argv) {
C++ Ошибка в функции поиска подстроки в строке. Алгоритм Бойера-Мура-Хорспула. http://www.cyberforum.ru/cpp-beginners/thread423736.html
Функция получает ссылки на две переменные: haystack и needle строкового типа. В haystack должна содержаться строка, в которой будет осуществлён поиск, а needle должна содержать подстроку, которую...
C++ Указатели и ссылки [С++] Всем привет. я тут программу делаю. Цель: определить,принадлежит ли точка заданному промежутку(а точнее лежит внутри или снаружи фигуры). Координаты храню в массивах(по 2 значения: x и y.). Вопрос... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
9698 / 5648 / 964
Регистрация: 25.07.2009
Сообщений: 10,863
14.01.2012, 04:14
Цитата Сообщение от Байт Посмотреть сообщение
Для нечетной не понятно, кого с чем менять
Если не сказано, что делать с последним элементом нечётной последовательности, думаю, самое правильное - ничего с ним не делать
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
46
47
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
void swap_neighbours(int * arr, size_t size){
    if ( size > 1 ){
        *arr ^= *(arr+1);
        *(arr+1) ^= *arr;
        *arr ^= *(arr+1);
        swap_neighbours(arr+2, size-2);
    }
}
 
void random_fill(int * arr, size_t size, int min, int max){
    while ( size-- )
        *arr++ = rand() % ( max - min + 1 ) + min;
}
 
void dump(const int * arr, size_t size){
    while ( size-- )
        printf("%d%c", *arr++, ( size ) ? ' ' : '\n');
}
 
int main(void){
    int * arr;
    size_t size;
    
    srand(time(NULL));
 
    while ( printf("Size of array: ") && scanf("%u", &size) == 1 && size ){
        if ( ! ( arr = malloc(sizeof(int) * size) ) ){
            perror("malloc");
            exit(1);
        }
        
        random_fill(arr, size, 0, 9);
        printf("Before: ");
        dump(arr, size);
        swap_neighbours(arr, size);
        printf("After:  ");
        dump(arr, size);
        
        free(arr);
    }
    
    exit(0);
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.