C语言:分段函数(仿竞赛题)

题目描述:在这里插入图片描述

输入
先输入一个整数n,表示后面总共要输入n组测试数据;

然后输入n组测试数据,每组测试数据是一个双精度浮点数x。

输出
根据输入的n组测试数据,对应输出n个输出结果,每个输出结果单独占一行,即每个输出结果后要加换行符。

样例输入
3
25
-2
49

样例输出
y=125.000000
y=1.000000
y=6.000000

#include <stdio.h>
#include <math.h>
int main()
{
	int n;
	double x,y;
    scanf("%d",&n);
    for(;n>0;n--)
    {
    	scanf("%lf",&x);
	if (x<0)
	    y=0.5*(-x);
	else 
	    if (x<10)
	       y=exp(x)+3;
	    else 
		    if(x<20)
	          y=log10(x);
	        else 
			    if (x<30)
	              y=pow(x,1.5);
	            else 
				   	if (x<50)  
	                    y=pow (x,0.5)-1;
	                else
	                    y=3*cos(x);
    printf("y=%lf\n",y);
    }
	return 0;
}

版权声明:本文为weixin_43540427原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。