В следующем коде функция avg(int i,int j,int k,int *pint,double *pfloat)
вычисляет среднее значение i
, j
, k
и возвращает целочисленную и поплавковую часть результата индивидуально. В качестве примера, если average = 22.45
, он должен вернуть 22 и 0,45.Как функция в C может возвращать несколько значений?
Вот код:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
void avg(int i,int j,int k,int *pint,double *pfloat)
{
double average=(i+j+k)/3;
*pfloat=average-(floor(average));
*pint=floor(average);
}
int main()
{
int Integer=0;
double rem=0;
avg(2,4,5,&Integer,&rem);
printf("%d\n%lf",Integer,rem);
return 0;
}
выход 3 и 0, почему ??
спасибо, что это сработало Я должен позаботиться о целочисленном делении –