Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/93: Рейтинг темы: голосов - 93, средняя оценка - 4.78
NastiKor
1 / 1 / 0
Регистрация: 05.10.2009
Сообщений: 101
1

Ввод и вывод двумерного массива - Нет доступа при записи "0x80000000"

11.10.2009, 20:48. Просмотров 18187. Ответов 11
Метки нет (Все метки)

Построила, ошибок нет. Дальше нажимаю на отладку, ввожу первые 4 цифры, потом нажимаю Enter, чтобы переместиться на строчку ниже и появляется след. сообщение:

Неуправляемое исключение в "0x1023817a (msvcr80d.dll)" в "Lab5. Задача 1.exe": 0xC0000005: Нет доступа при записи "0x80000000".

и открывается новое окно input.c....что обозначает ошибка и что содержит в себе окно input.c??

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
// Проба2.cpp : Defines the entry point for the console application.
//Ввод и вывод двумерного массива
 
#include "stdafx.h"
#include "conio.h"
 
int _tmain(int argc, _TCHAR* argv[])
{ float a[3][4];
int i,j;
 
for(i=0;i<3;i++)
 for(j=0;j<4;j++)
 {printf("Введите цифры, \n");
  scanf("%f ", a[i][j]);
 }
 
for(i=0;i<3;i++)
 for(j=0;j<4;j++)
 { printf("%f ", a[i][j]);
   printf("\n");
 }
getch();
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2009, 20:48
Ответы с готовыми решениями:

Рекурсия. Нарушение прав доступа при записи "0x00210f8c"
#include &lt;stdio.h&gt; #include &lt;cstdlib&gt; #include &lt;stdio.h&gt; unsigned c_0(int x, unsigned n)...

Ввод и вывод динамического массива. "Ошибка C2109: для индекса требуется массив или указатель"
Никак не могу доделать программу,а именно вывод массива на экран,массив выводится не тот,который я...

Ввод-вывод двумерного массива
Задание- нужно ввести двумерный массив, записать в него строки заданного с консоли количества....

Сортировка двумерного массива методом вставок с "конфеткой"
Доброго времени суток. Помогите разобраться со следующим заданием: Необходимо отсортировать...

Ошибки в задаче "Определить наименьший элемент каждой четной строки двумерного массива"
Задание: определить наименьший элемент каждой четной строки матрицы A #include &lt;stdio.h&gt;...

11
XuTPbIu_MuHTAu
Эксперт С++
2237 / 752 / 25
Регистрация: 27.05.2008
Сообщений: 1,498
11.10.2009, 20:51 2
NastiKor, у тебя access violation в 15 строке.Подсказывать надо,или сообразишь почему?
0
NastiKor
1 / 1 / 0
Регистрация: 05.10.2009
Сообщений: 101
11.10.2009, 21:04  [ТС] 3
Подскажите, пожалуйста, я чайник в программировании!! Причем все программы, которые я запускаю не работают и выдают именно эту ошибку!
0
.::.DIMA.::.
143 / 143 / 32
Регистрация: 26.10.2008
Сообщений: 782
11.10.2009, 21:08 4
В 15 строчке напишите & перед a[i][j].
& - это оперетор взятия адреса, и функции scanf нужно знать по какому адресу записывать элементы.
Если бы вы работали в C++, то там для ввода используется cin >> a[i][j]; Там уже этот оператор писать не нужно.
0
XuTPbIu_MuHTAu
Эксперт С++
2237 / 752 / 25
Регистрация: 27.05.2008
Сообщений: 1,498
11.10.2009, 21:14 5
Цитата Сообщение от NastiKor Посмотреть сообщение
Подскажите, пожалуйста, я чайник в программировании!! Причем все программы, которые я запускаю не работают и выдают именно эту ошибку!
хех

В scanf передается адрес,по которому записывать.Ты передаешь значени,она воспринимает его как адрес и пишет черти куда. В общем,
C++
1
scanf("%f " , &a[i][j]);
0
NastiKor
1 / 1 / 0
Регистрация: 05.10.2009
Сообщений: 101
11.10.2009, 21:23  [ТС] 6
Поняла, спасибо большое

Тогда вопрос следующий, как выводить массив в виде матрицы, а не так, чтобы каждая строка - отдельное число в столбик, т.е. получается 12 строчек...??
0
XuTPbIu_MuHTAu
Эксперт С++
2237 / 752 / 25
Регистрация: 27.05.2008
Сообщений: 1,498
11.10.2009, 21:32 7
NastiKor,
C++
1
2
3
4
5
for(i=0;i<3;i++) { 
    for(j=0;j<4;j++)
         printf("%f ", a[i][j]);
    printf("\n");
}
Добавлено через 16 секунд
какой-то я добрый сегодня.Могла бы сама догадаться
0
.::.DIMA.::.
143 / 143 / 32
Регистрация: 26.10.2008
Сообщений: 782
11.10.2009, 21:36 8
На c++
C++
1
2
3
4
5
6
7
8
for (int i = 0; i < 4; i++)
        {
                for (int j = 0; j < 4; j++)
                {
                        cout << a  [i] [j] << " ";
                }
        cout << endl;
        }
На C
C++
1
2
3
4
5
6
7
8
for (int i = 0; i < 2; i++)
        {
                for (int j = 0; j < 2; j++)
                {
                        printf ("%f ", a[i][j]);
                }
        printf ("\n");
        }
0
NastiKor
1 / 1 / 0
Регистрация: 05.10.2009
Сообщений: 101
11.10.2009, 21:47  [ТС] 9
1. Вводится матрица 4 на 4, а не 3 на 4.
2. Получается так(последняя строчка не выводится в результате, но вводить её обязательно надо...хм):

1 4 6 2
3 5 3 1
1 2 2 1
1 6 7 5

1.000000
4.000000
6.000000
2.000000

3.000000
5.000000
3.000000
1.000000

1.000000
2.000000
2.000000
1.000000

Добавлено через 7 минут
qwert, после Ваших исправлений, получилось следующее:

1 4 6 2
3 5 3 1
1 2 2 1
1 6 7 5

2.11.000000
2.14.000000
2.16.000000
2.12.000000

2.13.000000
2.15.000000
2.13.000000
2.11.000000

2.11.000000
2.12.000000
2.12.000000
2.11.000000

При этом программа выглядит следующим образом:
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
// Проба2.cpp : Defines the entry point for the console application.
//Ввод и вывод двумерного массива
 
#include "stdafx.h"
#include "conio.h"
 
int _tmain(int argc, _TCHAR* argv[])
{ float a[3][4];
int i,j;
 
printf("Введите цифры, \n");
 
for(i=0;i<3;i++)
 for(j=0;j<4;j++)
 {
  scanf("%f ", &a[i][j]);
 }
 
for(i=0;i<3;i++)
{for(j=0;j<4;j++)
  {printf("\n2.1%f ", a[i][j]);
 }
   printf("\n");
 }
getch();
    return 0;
}
0
Том Ардер
Модератор
Эксперт по математике/физике
3844 / 2456 / 328
Регистрация: 15.06.2009
Сообщений: 4,513
11.10.2009, 22:12 10
Цитата Сообщение от NastiKor Посмотреть сообщение
printf("\n2.1%f ", a[i][j]
Надо %2.1f
0
.::.DIMA.::.
143 / 143 / 32
Регистрация: 26.10.2008
Сообщений: 782
11.10.2009, 22:34 11
Я просто для примера взял матрицу 4 на 4 и 2 н а 2.
Можете исправить в цикле значения и всё будет работать.
0
accept
4835 / 3257 / 464
Регистрация: 10.12.2008
Сообщений: 10,569
12.10.2009, 03:58 12
C
1
#include <stdio.h>
0
12.10.2009, 03:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2009, 03:58

Ввод и вывод двумерного массива в процедуре
Не понимаю как написать процедуру для ввода и вывода двумерного массива вещественных чисел и как...

Определение и вывод номеров минимальных элементов двумерного массива и ввод массива меньшей размерности
Доброго времени суток. Пожалуйста, помогите с решением задания. Заранее спасибо. Исходная...

Нарушение прав доступа при чтении "0xa99e99d8"
При компиляции программы #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;conio.h&gt; #define...


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

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

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