Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

ошибка вывода элементов массива

8.8K
13 ноября 2008 года
opex
71 / / 17.01.2007
Код:
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#pragma hdrstop
//------------------------------------------------------------------------
#pragma argsused


int main(int argc, char* argv[])
{
int mas[4];

printf("vvedite 5 elementov massiva: \n");
for(int i=0;i<5;i++)
{
scanf("%d",&mas);
};


printf("elementi massiva s pomow'u cikla: \n");
for(int j=0;j<5;j++)
{
printf("%d\n",mas[j]);
};

printf("elementi massiva vruchnuiu: \n");
printf("%d\n",mas[0]);
printf("%d\n",mas[1]);
printf("%d\n",mas[2]);
printf("%d\n",mas[3]);
printf("%d\n",mas[4]);



getch();
return 0;
}


Запускаю программу, ввожу элементы массива: 1,2,3,4,5

Вариант1. Этот кусок кода
 
Код:
printf("elementi massiva s pomow'u cikla: \n");
for(int j=0;j<5;j++)
{
printf("%d\n",mas[j]);
};


выводит элементы массива таике: 1,2,3,4,4

Вариант 2.Следующий кусок кода выводит элементы массива верно
 
Код:
printf("elementi massiva vruchnuiu: \n");
printf("%d\n",mas[0]);
printf("%d\n",mas[1]);
printf("%d\n",mas[2]);
printf("%d\n",mas[3]);
printf("%d\n",mas[4]);


выводит: 1,2,3,4,5

ПОчему?

Если же в код всей программы добавить вот такой кусок,совершенно не имеющий отношение к работе с массивами
 
Код:
printf("eksperementi: \n");
int a=5;
int *ptr=&a;
printf("a ravno: %d\n",a);
printf("ptr ravno: %d\n",ptr);
printf("znachenie po adresu ptr: %d\n",*ptr);

то и вариант 1, и вариант 2 работают верно и выводят правильно элементы массива: 1,2,3,4,5

В чем дело-то?
9.0K
13 ноября 2008 года
t-34
129 / / 30.11.2007
 
Код:
int mas[4];


массив-то на 4 элемента объявлен! а вы пытаетесь впихнуть в него 5 элементов...
8.8K
13 ноября 2008 года
opex
71 / / 17.01.2007
Опа!произошла путаница) Спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог