0 / 0 / 0
Регистрация: 04.07.2018
Сообщений: 2
1

Ошибка в двумерных массивах

04.07.2018, 17:48. Показов 354. Ответов 0
Метки нет (Все метки)

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#define _CRT_SECURE_NO_WARNINGS // для возможности использования scanf
#include <stdio.h>
#include <stdlib.h> // для перехода на русский язык
#define _USE_MATH_DEFINES // for C
#include <math.h>
#define a 10
#include <malloc.h>
int FF (int *arr, int n, int m)
{
    int result=0;
    for (int i = 0; i < m; i++)
        for (int j = 0; j < n; j++)
            if (arr[i, j] == 0)
            {
                result++;
                break;
            }
    return result;
}
 
void main()
{
    int n = 0;
    int m = 0;
    int *arr;
    int choose = 0;
    printf("Enter the dimension of the array: \n");
    scanf("%d", &n);
    scanf("%d", &m);
    if ((n > a) || (n <= 0))
    {
        n = a;
    }
 
    arr = (int**)malloc(n * sizeof(int));
    for (int i = 0; i < n; i++) 
    {
        arr[i] = (int*)malloc(m * sizeof(int));
    }
    printf("Fill automatically(1) or manually(2): ");
    scanf("%d", &choose);
 
    if (choose == 1)
        for (int i = 0; i < n; i++) // заполнение автоматически
            for (int j = 0; j < m; j++)
            {
                arr[i, j] = rand()%100;
            }
 
    if (choose == 2)
        for (int i = 0; i < n; i++) // заполнение вручную
            for (int j = 0; j < m; j++)
            {
                scanf("%d", &arr[i, j]);
            }
    else;
 
    if (choose==0)
        for (int i = 0; i < n; i++) // заполнение по умолчанию
            for (int j = 0; j < m; j++)
            {
                arr[i, j] = 0;
            }
            
    for (int i = 0; i < n; i++) // распечатка
    {
        for (int j = 0; j < m; j++)
        {
            printf("%d ", arr[i, j]);
        }
        printf("\n");
    }
 
    printf("%d", FF(arr, n, m));
    free (arr);
    _getch();
}
В итоге получаются одинаковые строчки в матрице, например:

21 1 -66
21 1 -66

При это не играет роль, рандомно ли я заполняю или вручную.
Решить проблему самостоятельно не получилось, помогите, пожалуйста. Заранее спасибо
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.07.2018, 17:48
Ответы с готовыми решениями:

Поиск в двумерных массивах
Допустим есть 2 двумерных массива Первый: 1 2 3 4 5 6 7 8 Второй: 4 3 2 1 6 8

Странный баг в двумерных массивах
Стоит простая задача: В ручную инициализировать матрицу 2Х2 и вывести её на экран. Но при попытке...

Ошибка в двумерных массивах
Пишет ошибку Run-Time Check Failure #2 - Stack around the variable 'mas2' was corrupted. ...

Заполнение двумерных массивов, поиск и замена элементов в двумерных массивах
У меня проблема с 2-мя задачами поиогите пожалуйста. 1. Написать программу, которая вводит по...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.07.2018, 17:48
Помогаю со студенческими работами здесь

ВЫчисление в двумерных массивах
найти минимальный элемент в каждой строке и записать данные в новый массив Без использование sring...

Циклы в двумерных массивах
Люди, помогите. плиз, не понимаю, в чем дело. Есть входной файл с массивом символов 20х15...

Расчеты в двумерных массивах
Составить блок – схему алгоритма и разработать программу решения следующих задач: Ввести...

Столбцы в двумерных массивах
Помогите пожалуйста) Мне нужно найти в матрице такие столбцы и строки, сума элементов которых будет...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru