c语言三个分段函数求值 用c语言怎么求分段函数

用C语言求分段函数值

#include stdio.h 

创新互联-专业网站定制、快速模板网站建设、高性价比宣化网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式宣化网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖宣化地区。费用合理售后完善,十年实体公司更值得信赖。

int main() 

{double x,y;

scanf("%lf",x);

if(x0)y=x*x-1;

else if(x1)y=x*x;

else y=x*x+1;

printf("%g",y);

return 0; 

}

c语言 分段函数求值

你这个题是ACM的题目?我看了下你的程序,正经的数字是可以的,但你说错了,那就该就是要考虑极限情况了。譬如x=0.0000000000000000000000000000000001的时候,你的程序输出是100.0。。。。。应该就是出错在这里了。

还有我的老师告诉我,使用float不要用x==0这种表达方式,,因为float类型的等于其实就是在有限的位数上比较大小。。。当数字极小或者极大的时候就会出现不相等的数字会出现相等的情况了。

换成double就行了

#include "stdio.h"

void main()

{

double a=0.0;

while(scanf("%lf",a)!=EOF)

{

if(a0)

{

a=a*a+1;

}

else if(a0)

{

a=-a;

}

else if(a==0)

{

a=100.0;

}

printf("%.1lf\n",a);

a=0.0;

}

}

分段函数求值 c语言

# include stdio.h

# include math.h

void main()

{

int x;

int y;

while(1)

{

printf("input x:\n");

scanf("%d",x);

if(x-2)

{

y=7-2*x;

}

else if(x=-1 x3)

{

y=5-abs(3*x+2);

}

else

{

y=3*x+4;

}

printf("y is %d\n\n",y);

}

}

这样就可以了,望采纳!

C语言 分段函数求值。

#includestdio.h

#includemath.h

int main()

{

int mark = -1;

float x,y;

scanf("%f",x);

if(x -2.0)

{

mark = 0;

}

else if(x = 3.0)

{

mark = 2;

}

else

{

mark = 1;

}

switch(mark)

{

case 0 : y = 7.0 - 2 * x; break;

case 1 : y = 5.0 - fabs(3 * x + 2.0); break;

case 2 : y = 3 * x + 4.0; break;

default: mark = 100;

}

if(mark == 100)

{

printf("error\n");

return 0;

}

printf("%f\n",y);

return 0;

}


标题名称:c语言三个分段函数求值 用c语言怎么求分段函数
URL链接:http://scjbc.cn/article/doiphdp.html

其他资讯