1. 任务描述
从键盘输入x的值(要求为实型),根据公式1计算并输出x和y的值。
x < 2, y = x
2 <= x <6, y = x*x +1
6 <= x < 10, y = sqrt(x+1)
x >= 10, y = 1 / (x+1)
2. 代码实现
/*
*Copyright(c)2019,yafangma@126.com
*All rights reserved.
*文件名称:segmented_function.cpp
*作 者:马娅芳
*完成日期:2019.1.11
*版 本 号: v1.0
*问题描述:从键盘输入x的值(要求为实型),根据公式1计算并输出x和y的值。
x < 2, y = x
2 <= x <6, y = x*x +1
6 <= x < 10, y = sqrt(x+1)
x >= 10, y = 1 / (x+1)
*程序输入:任一实数
*程序输出:对应的分段函数值
*/
#include <stdio.h>
#include <math.h>
int main(){
double x, y;
int t;
scanf("%lf",&x);
t = (x < 2) + (x < 6) + (x < 10); //使用 整数 t 的值代替 x 的范围
switch(t)
{
case 3: // (x<2), (x<6), (x<10) 全部