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

Адресная арифметика: поиск max элемента массива

06.05.2014, 21:42. Просмотров 386. Ответов 1
Метки нет (Все метки)

Здравствуйте! Это программа находит максимальный элемент из введеного массива. Программа работает и все хорошо, если бы не одно но.. Нужно дописать вторую функцию,
которая также будет находить максимальное значение из массива, но при этом необходимо использовать адресную арифметику (без оператора [] и индексирования переменных)

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
#include <stdio.h>
 
const int N = 5;
 
double maxi(double x[], int N)
{
 int i, max; 
   max = x[0];
  for (i = 1; i < N; i ++)
    if (x[i] > max)
      max = x[i];
    return max;
}
 
 
int main(void)
{
  double x[N], m; // max;
  int i, status;
  
  for (i=0; i < N; i++)
  {
    printf("Задай элементы массива x[%d] = ", i);
    status = scanf ("%lf", &x[i]);
        if (status != 1)
        {
                printf("Не корректно введен элемент\n");
            return 1;
        }
  }
  
  m = maxi(x, N);
   printf("Максимум ровняется %lf\n", m);
   
            
  
  return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2014, 21:42
Ответы с готовыми решениями:

адресная арифметика
int funk(char *s) { char *p=s; while(*p) p++; return p-s; } Если...

Адресная арифметика
Можно ли в C++ в массиве произвольного типа использовать адресную арифметику?Например, так: ...

Адресная арифметика
Объясните пожалуйста вот эту строчку кода return allocp -n: Почему просто не возвратить...

Указатели и адресная арифметика
Язык C. Задание звучит так: 2) Для этого фрагмента программы написать значения каждой переменной...

[Задача] Адресная арифметика
Просьба к модераторам: НЕ надо перетаскивать в разделы типа &quot;Си\Си++ для экспертов&quot; Пример...

1
Jewbacabra
Эксперт PHP
3785 / 3120 / 1371
Регистрация: 24.04.2014
Сообщений: 9,487
06.05.2014, 22:16 2
C
1
2
3
4
5
6
double max(double* start, double* end) {
    double* m = start;
    for (double* i = start+1; i < end; ++i)
        if (*i < *m) m = i;
    return *m;
}
Вызывать, например так
C
1
2
double arr[N] = {...};
max(arr, arr+N);
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2014, 22:16

Адресная арифметика и массивы
Нужно с помощью указателя организовать ввод и вывод матрицы. Индексную адресацию не использовать....

Указатели и адресная арифметика
Помогите с заданием Язык C. Задание звучит так: 2) Для этого фрагмента программы написать...

Указатели, адресная арифметика
Ребята, помогите плиз вот с таким вот заданием... Написать программу, которая поочередно выводит...


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

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

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