Процедура с неопределённым числом параметров: можно ли использовать для чисел, введённых с клавиатуры? - C (СИ)
Формулировка задачи:
Процедура с неопределённым числом параметров, можно ли использовать для чисел, введённых с клавиатуры?
Она работает, но как сделать чтобы сравнивала числа, введённые с клавиатуры?
#include <stdio.h> #include <stdarg.h> int max(int N,...) { va_list ap; int i = 0; int max=0,k; va_start(ap,N); while(i<N){ k=va_arg(ap,int); if(k>max) max=k; i++; } va_end(ap); return max; } int main(int argc, char *argv[]) { printf("max(1,56,-43,32)=%d\n",max(4,1,56,-43,32)); printf("max(1,32)=%d\n",max(2,1,32)); printf("max(1,56,-43,32,44,84,-32,0,5)=%d\n",max(9,1,56,-43,32,44,84,-32,0,5)); return 0; }
Решение задачи: «Процедура с неопределённым числом параметров: можно ли использовать для чисел, введённых с клавиатуры?»
textual
Листинг программы
printf("max(1,56,-43,32)=%d\n",max(4,1,56,-43,32));
Объяснение кода листинга программы
- Вводится функция
printf
, которая выводит результат на экран. - В функции
printf
используется форматная строка с placeholder%d
, который заменяется на результат вычисления функцииmax
. - В функции
printf
передается строка с аргументами функцииmax
, разделенными запятыми. - Функция
max
принимает неопределенное количество аргументов, которые могут быть числами. - В функции
max
происходит сравнение чисел и возвращается наибольшее число. - В качестве аргументов функции
max
используются числа 1, 56, -43 и 32. - Результат вычисления функции
max
равен 56. - Результат вычисления функции
max
выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д