编写一函数,求表达式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; }