1

Тема: Динамічний масив в мові С

Як створити динамічний масив, упорядковуючи його за зростанням використовуючи покажчики?

2

Re: Динамічний масив в мові С

1. Відкрити підручник.
2. Прочитати.
3. Попрактикувати набуті знання.
Усе погано

3

Re: Динамічний масив в мові С

Масиви в C (en)

4

Re: Динамічний масив в мові С

/**************************************************************
 Як створити динамічний масив, 
 упорядковуючи його за зростанням використовуючи покажчики?                                       *
 *************************************************************/

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define ARRAY_SIZE    100

void FillArray(int *);
void Sort(int, int *);

int main(int argc, char *argv[])
{
    srand(time(NULL));
    int * array = (int *) malloc(sizeof(int) * ARRAY_SIZE);
    FillArray(array);
    
    for (int i = 0; i < ARRAY_SIZE; i++) 
        printf("[%2d]=[%11d]\t ",i, *(array + i));
    printf("\n");
    Sort(ARRAY_SIZE,array);
    return 0;
}

void FillArray(int * array)
{
    for (int i = 0; i < ARRAY_SIZE; i++)
    {
        *(array + i) = rand();
    }
}

// Function to sort the numbers using pointers 
void Sort(int n, int* ptr) 
{ 
    int i, j, t; 
  
    // Sort the numbers using pointers 
    for (i = 0; i < n; i++) { 
  
        for (j = i + 1; j < n; j++) { 
  
            if (*(ptr + j) < *(ptr + i)) { 
  
                t = *(ptr + i); 
                *(ptr + i) = *(ptr + j); 
                *(ptr + j) = t; 
            } 
        } 
    } 
  
    // print the numbers 
    for (i = 0; i < n; i++) 
        printf("[%2d]=[%11d]\t ",i, *(ptr + i)); 
} 
Подякували: leofun011