maximum
определяется как указатель на long
.Если вы не установите этот указатель на указатель на что-то, вы вызываете неопределенное поведение , читая и разыменовывая недопустимый указатель.
Кроме того, поскольку вы указываете maximum
на первый элементмассив, каждый раз, когда вы обновляете *maximum
, вы изменяете первое значение в массиве, что, вероятно, не то, что вам нужно.
На самом деле maximum
не нужно указатель, поэтому изменитеопределение на long
и измените ссылки соответственно.
int main()
{
long array[1000], maximum, size, c, location = 1;
printf("Enter the number of elements in array\n");
scanf("%ld", &size);
printf("Enter %ld integers\n", size);
for ( c = 0 ; c < size ; c++ )
scanf("%ld", &array[c]);
maximum = array[0];
for (c = 1; c < size; c++)
{
if (array[c]) > maximum)
{
maximum = array[c]);
location = c+1;
}
}
printf("Maximum element is present at location number %ld and it's value is %ld.\n", location, maximum);
return 0;
}