Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 16.10.2015
Сообщений: 12
1

Вычислить сумму значений элементов первой строки и вывести ее на экран

12.12.2015, 20:01. Показов 563. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не могу понять в чем проблема...программа выполняется, но в конце выбивает ошибку...скорее всего из-за очистки освобождения памяти, но не знаю как исправить...
-----------------------------------------------------------------------------------------------------------------------------------------------
Вот задание:
Задан двумерный массив М(N, M). В массиве вычислить сумму значений элементов первой строки и вывести ее на экран.
-----------------------------------------------------------------------------------------------------------------------------------------------
Вот мой код:
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
78
79
80
81
82
#include <stdio.h>
#include <locale>
#include <conio.h>
#include <stdlib.h>
 
void PrintArr (int**,int,int);
void SummOtr (int**, int, int);
 
void main ()
{
    int n,m;
    int **arrA;
    do
//proverka na rasmernost massiva
        {
        printf("\nVvedite kolichestvo strok n: ");
        scanf_s("%d",&n);
        printf("\nVvedite kolichestvo stolbzov m: ");
        scanf_s("%d",&m);
        }
    while ((m<1)&&(n<1));
//videlenie pamyati
    if (!(arrA = new int*[n]))
        {
        printf("\nNe hvataet pamyati\n");
        exit(0);
        }
    for (int i=0;i<n;i++)
        if (!(*(arrA+i) = new int[m]))
        {
        printf("\nNe hvataet pamati\n");
        arrA=NULL;
        exit(0);
        }
//vvod elementov massiva
printf("\nVvedite elementi massiva\n");
    for (int i=0;i<n;i++)
    {
        for (int j=0;j<m;j++)
        {
        printf("A[%d][%d]",i,j);
        scanf_s("%d",*(arrA+i)+j);
        }
    }
PrintArr(arrA,n,m);
puts("\n\n");
SummOtr(arrA,n,m);
//osvobozdenie pamyati
 
for (int i=0;i<n;i++)
    {
        delete [](*(arrA+i));
}
delete []*arrA;
_getch();
}
 
void SummOtr (int** arr, int m1,int n1)
{
int Summ=0;
for (int i=0;i<1;i++)
    {
        for (int j=0;j<m1;j++)
        {
        Summ = Summ+*(*(arr+i)+j);
        }
    }
    printf("\nSumma elementov pervoi stroki =%d",Summ);
}
 
//Vvod na pechat 
 
void PrintArr(int **arr, int n1, int m1)
{
puts("Vvedenni massiv = ");
for (int i=0;i<n1;i++)
{
printf("\n\n");
for (int j=0;j<m1;j++)
    printf("%5d",*(*(arr+i)+j));
}
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2015, 20:01
Ответы с готовыми решениями:

Вычислить сумму элементов после первой строки и произведение элементов последнего столбца
Помогите пожалуйста с задачей по программированию пожалуйста,Дана матрица А,вычислить сумму...

Вывести сумму элементов первой строки массива
&quot;Создайте приложение в котором пользователь вводит двумерный массив размером N×M, выводит его...

Вычислить сумму каждых третьих элементов первой строки матрицы
вычислить сумму каждых третьих элементов первой строки массива: записал так if (i == 1 &amp;&amp; j % 3 ==...

Вычислить сумму элементов первой строки и произведение последнего столбца в каждой матрице
даны три матрицы А(3,6),В(4,4),С(5,4).вычислить сумму элементов первой строки и произведение...

3
67 / 65 / 61
Регистрация: 11.11.2015
Сообщений: 392
12.12.2015, 20:08 2
вы создаете и удаляете в стиле C++.
В C вроде используются malloc, relloc, free. К тому же в for, переменную-счетчик нужно объявить ранее.
0
0 / 0 / 0
Регистрация: 16.10.2015
Сообщений: 12
12.12.2015, 20:14  [ТС] 3
На сколько мне известно, при помощи new и delete в С вполне можно работать. Дело в том, что вся программа выполняется...цели достигаются, но после завершения выбивается ошибка
0
67 / 65 / 61
Регистрация: 11.11.2015
Сообщений: 392
12.12.2015, 20:24 4
И еще void main(). Вроде как main() должна возвращать целое int.
у меня в таком виде не собирается, да и не должно по идее.

Кроме этого(собираю как C++ проект), у меня работает и не вылетает в конце.
0
12.12.2015, 20:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.12.2015, 20:24
Помогаю со студенческими работами здесь

Найти сумму значений элементов массива и вывести их на экран
Здравствуйте, столкнулся с проблемой. Даны 2 массива А 10 целых чисел и В 10 вещественных...

Определить сумму абсолютных значений элементов и вывести их на экран
Имеем одномерные материальные массивы А={}_{l} , В={}_{m} , С={}_{n} . Создать процедуру ввода...

Вывести матрицу на экран и найти сумму наибольших значений элементов её строк
Уважаемые форумчане, помогите пожалуйста с решением задачи.%-) Дана действительная матрица размера...

Сформировать матрицу из случайных значений, подсчитать сумму её элементов, вывести матрицу и сумму на экран
Задание: Создать двумерный массив случайных чисел А.Найти сумму элементов массива.Вывести массив...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru