Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Jason Leavers
2 / 2 / 2
Регистрация: 23.10.2014
Сообщений: 29
#1

Создать двумерный квадратный массив - C (СИ)

23.10.2014, 14:53. Просмотров 592. Ответов 2
Метки нет (Все метки)

Приветствую!
Моя задача: создать двумерный квадратный массив.

Мой план:
1) Пользователь вводит элементы матрицы по вертикали создавая одномерный массив.
2) На основе созданного массива создаётся двумерный массив.
3) Пользователь заполняет двумерный массив.

Вопросы:
1) Не могу сообразить как создавать двумерный квадратный массив.
2) Верно ли я мыслю?

Моё создание одномерного массива:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
int *Arr = malloc(sizeof(int));
    int Enter = -1;
    int i = 0, j = 0;
 
    while( 1 ) {
        scanf("%d",&Enter);
        if(Enter == 0) break;
        Arr[i++] = Enter;
        Arr = realloc(Arr, sizeof(int) * (i + 1));
    }
    for (j = 0; j < i; j++ ){
    //создание столбцов к созданному массиву. как правильно это сделать?  
}
PS:
Гугля решение проблемы пришлось встретится с такой строкой:
C
1
int **a = (int**)malloc(n* sizeof(int*));
Что значит "**a" илми"int**"? Точнее что значит "**" ?

Благодарю.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2014, 14:53
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Создать двумерный квадратный массив (C (СИ)):

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

Создать двумерный массив под матрицу
Необходимо произвести заданный поиск элемента в матрице, но это не проблема. ...

Создать двумерный массив через указатель
Нужно создать 2 матрицы размером m,n и вектор B. Как сделать правильно через...

Как создать динамический двумерный массив
Здравствуйте. Не знаю как объявить двумерный массив. Пытался так сделать не...

Как создать указатель на двумерный массив
Доброй ночи. Запутался с указателями. не могу правильно создать указатель на...

Создать двумерный массив заполнить его рандомом
Помогите с задачей, Cоздать двумерный массив заполнить его рандомом, и...

2
kiff20072008
57 / 57 / 23
Регистрация: 28.09.2012
Сообщений: 358
23.10.2014, 15:27 #2
чтобы создать двумерный массив нужно сделать так

C
1
2
3
4
int **A = (int **)malloc(N*sizeof(int *));
for(int i = 0; i < N; i++) {
    A[i] = (int *)malloc(M*sizeof(int));
}
**A это массив указателей на массивы
в итоге у вас получится матрица M*N
и вы можете обращаться к элементам
типо
A[i][j] где 0<=i<M и 0<=j<N
0
Справлюсь
23 / 23 / 14
Регистрация: 24.07.2014
Сообщений: 209
23.10.2014, 15:39 #3
Цитата Сообщение от Jason Leavers Посмотреть сообщение
Что значит "**a" илми"int**"? Точнее что значит "**" ?
int **a означает что переменная a имеет тип указатель на указатель на int.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2014, 15:39
Привет! Вот еще темы с решениями:

Как корректно создать указатель на двумерный массив?
Т.е. вопрос вот в чем. Можно сделать указатель на массив и в цикле его...

Используя malloc и realloc создать двумерный динамический массив
Используя malloc и realloc, помогите написать часть кода для ввода массива...

Создать бесконечный двумерный массив с помощью malloc realloc
Требуется создать бесконечный двумерный массив. С помощью malloc realloc. Идея...

Как создать динамический двумерный массив и самому его заполнить?
Как создать динамический двумерный массив и самому его заполнить?


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

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

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