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

Ваш аккаунт

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

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

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

Ввод массива: введенные значения не сохраняются.

58K
27 августа 2010 года
Agronomchek
8 / / 24.08.2010
Вот фрагмент программы. С клавиатуры должны вводиться кол-во элементов массива и сами элементы. Потом посредством указателей нужно размер и сам массив передать в главную функцию. Но при вводе значений элементов массива записи не происходит, сплошные нули... не могу понять из-за чего это...
Код:
void f1(float *a, int *m)
{
     int i, k;
     printf("\nPlease enter m - size of array: "); scanf("%d", m);
     k=*m;
     a=(float*)malloc(k*sizeof(float));
     if (!a)
     {
               printf("\nRequire more memory!\n");
               system("pause");
               exit(1);
     }
     for (i=0; i<k; i++)
     {
         printf("\n Enter a[%d]= ",i);
         scanf("%f", (a+i));
     }
}
11
27 августа 2010 года
oxotnik333
2.9K / / 03.08.2007
 
Код:
scanf("%f", a);
не пойдет?
58K
27 августа 2010 года
Agronomchek
8 / / 24.08.2010
Цитата: oxotnik333
 
Код:
scanf("%f", a);
не пойдет?



к сожалению, и так и так пробовал) никаких изменений это не дало.

7
28 августа 2010 года
@pixo $oft
3.4K / / 20.09.2006
Вставлю свои 48 копеек
 
Код:
scanf("%f", &a);
не пойдет?
58K
28 августа 2010 года
Agronomchek
8 / / 24.08.2010
да, я тоже заметил в предыдущем сообщении эту ошибку.
14
30 августа 2010 года
Phodopus
3.3K / / 19.06.2008
А ты сделай цикл вывода сразу после цикла ввода и увидишь что все прекрасно записывается :)
58K
04 сентября 2010 года
pilot1440
1 / / 20.02.2010
надо возвращать из функции указатель на массив а, ну и в main
вставить a=f1(a,m)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог