@Froman

Как вызывать функцию?

Задача простая: найти среднее арифметическое двух чисел (оба положительные и целые):
int middle (int a,int b); // объявление функции
int main(void) // тело функции
{
  int a,b,z;
  scanf("%d %d",&a,&b);
  middle(); // вызов функции
  printf("%d\n", z);
return 0;  
}
int middle (int a,int b) // определение функции
{
    int z=(a+b)/2;
    printf("%d",z);
}

Ошибка, как я понимаю, популярная: "too few arguments to function middle". Однако, как мне казалось, достаточно просто написать имя функции (middle) с пустыми скобками (ну, с учётом того, что внизу я её определил, всё расписал) и она уже начнёт работать в теле (по крайней мере, мне так показывали на некоторых примерах). Видимо, я неправильно понял алгоритм. Как тогда правильно надо вызвать функцию?
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
Ну вы же в объявлении функции расписали, что она ожидает два аргумента и должна возвращать некоторое число)
1. Передайте ей a и b
2. Уберите printf из тела функции
3. Добавьте return z

PS: среднее - это не middle(середина), а average
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 03:54
1500 руб./за проект
22 нояб. 2024, в 02:56
10000 руб./за проект
22 нояб. 2024, в 00:55
500 руб./за проект