Тема: Динамічний масив в мові С
Як створити динамічний масив, упорядковуючи його за зростанням використовуючи покажчики?
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C++ → Динамічний масив в мові С
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Як створити динамічний масив, упорядковуючи його за зростанням використовуючи покажчики?
1. Відкрити підручник.
2. Прочитати.
3. Попрактикувати набуті знання.
Усе погано
/**************************************************************
Як створити динамічний масив,
упорядковуючи його за зростанням використовуючи покажчики? *
*************************************************************/
#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));
}
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися