Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2023, 00:31   #1
Dimian
 
Регистрация: 22.01.2023
Сообщений: 5
Вопрос Создание динамических массивов из двумерного массива. С(Си)

Данные: tab2 - массив действительных чисел размерностью n строк, m столбцов.
Напишите функции:

• f1 — создает массив tabD, содержащий положительные элементы:

• f2 — создает массив tabU, содержащий отрицательные элементы.

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

Код:
Код:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>


void main() {
    int **tabD;
    int **tabU;
    int i, j;
    int i2, j2;
    int m, n;
    printf("Podaj m & n:\n");
    scanf("%d/%d", &m, &n);
    tabD = (int**) malloc(sizeof(int*)*m);
    tabU = (int**) malloc(sizeof(int*)*m);
    for (i = 0; i < m; i++) {
        tabD[i] = (int*) malloc(sizeof(int)*n);
    }
    for (i2 = 0; i2 < m; i2++) {
        tabU[i2] = (int*) malloc(sizeof(int)*n);
    }
 

    for (i = 0; i < m; ++i) {
        for (j = 0; j < n; ++j) {
         tabD[i][j] = rand() % 1000;
         printf("%d ", tabD[i][j]);
        }
        printf("\n");
    }
    for (i2 = 0; i2 < m; ++i2) {
        for (j2 = 0; j2 < n; ++j2) {
         tabU[i2][j2] = -(rand() % 1000);
         printf("%d ", tabU[i2][j2]);
        }
        printf("\n");
    }
 

    free(tabD);
    free(tabU);
     
}

Подскажите как правильно это сделать!
А то мне кажется, что мое решение не является хорошим.
Dimian вне форума Ответить с цитированием
Старый 22.01.2023, 01:07   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Цитата:
Сообщение от Dimian Посмотреть сообщение
Напишите функции:

• f1 — создает массив tabD, содержащий положительные элементы:

• f2 — создает массив tabU, содержащий отрицательные элементы.
Где функции?
p51x вне форума Ответить с цитированием
Старый 22.01.2023, 03:30   #3
Dimian
 
Регистрация: 22.01.2023
Сообщений: 5
По умолчанию

p51x, Да с этим, вообще-то, и прошу помочь разобраться.
Dimian вне форума Ответить с цитированием
Старый 22.01.2023, 14:41   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Чем с этим? Как объявлять функции есть в любой книжке по языку.
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создание НЕСКОЛЬКИХ динамических массивов Glebson Помощь студентам 8 25.12.2016 13:22
Динамическое создание двумерного массива (С++) Артём Волжанкин Помощь студентам 2 12.07.2012 17:17
Выполнить обработку массивов. предусмотреть описание массивов как динамических Vika_0_0 Паскаль, Turbo Pascal, PascalABC.NET 8 03.06.2012 10:12
создание двумерного массива geologg Общие вопросы C/C++ 2 19.04.2012 17:32
Создание двумерного массива в С++ JuniorProger Общие вопросы C/C++ 5 15.02.2012 17:20