#include <stdio.h>
#include <math.h>
#include <float.h>
// Return 1 = finite, 0 = infinite
int main(void)
{
printf("isfinite(NAN) = %d\n", isfinite(NAN));
printf("isfinite(INFINITY) = %d\n", isfinite(INFINITY));
printf("isfinite(0.0) = %d\n", isfinite(0.0));
printf("isfinite(3.14) = %d\n", isfinite(3.14));
printf("isfinite(DBL_MIN) = %d\n", isfinite(DBL_MIN));
printf("isfinite(989.123) = %d\n", isfinite(989.123));
printf("isfinite(1.0) = %d\n", isfinite(1.0));
printf("isfinite(exp(700)) = %d\n", isfinite(exp(700)));
}
/*
run:
isfinite(NAN) = 0
isfinite(INFINITY) = 0
isfinite(0.0) = 1
isfinite(3.14) = 1
isfinite(DBL_MIN) = 1
isfinite(989.123) = 1
isfinite(1.0) = 1
isfinite(exp(700)) = 1
*/