编写一函数,求表达式x^2-2x+1的值域,x作为参数传递给函数
能帮帮我吗?
程序代码:
#include <stdio.h>
#include <math.h>
#define X1 (x1-1.0)*(x1-1.0)
#define X2 (x2-1.0)*(x2-1.0)
const double EPS = 0.0000001;
char *fmt = "f(x) ∈ [%.2f, %.2f]\n";
double x1, x2;
void fooX(double x1, double x2) {
if((1 - x1) > EPS && (x2 - 1) > EPS) {
if((X1 - X2) > EPS) {
printf("A: ");
printf(fmt, 0.0, X1);
} else {
printf("B: ");
printf(fmt, 0.0, X2);
}
} else if((1 - x1) > EPS && (1 - x2) > EPS) {
printf("C: ");
printf(fmt, X2, X1);
} else {
printf("D: ");
printf(fmt, X1, X2);
}
}
int main(void) {
printf("输入x的取值范围: x∈(x1, x2)\n");
scanf("%lf%lf", &x1, &x2);
if((x2 - x1) > EPS) {
fooX(x1, x2);
printf("\n");
} else {
printf("取值范围不合法!\n");
}
return 0;
}
