新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你这个题是ACM的题目?我看了下你的
创新互联专业为企业提供赵县网站建设、赵县做网站、赵县网站设计、赵县网站制作等企业网站建设、网页设计与制作、赵县企业网站模板建站服务,10余年赵县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
程序
,正经的
数字
是可以的,但你说错了,那就该就是要考虑极限情况了。譬如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;
}
}
输入数用scanf()函数;
分段用switch()函数;
1、绝对值用math库里面的abs()函数
2、e^x用math库里面的pow(e,x)函数
3、同理指数的都有pow()函数,
4、cos函数也是math库里面的double
cos(double
x)函数
自己动手吧,我已经把难点全部说出来了!
希望可以帮到你,如果满意请采纳!
include int main(){ int x,y; printf("请输入一个X的值:"); scanf("%d",x); if(x==0) y=x=0; else if(x0) y=x=1; else if (x0) { y=x=1; printf("x=%d,y=%d",x,y); } else if (x0) { y=x=-1; printf("x=%d,y=%d",x,y); } return 0; }//还有哦,=是贬值,==是判断,你看看你的判断是=,呵呵,是错误的哦。//:对,就是这样,这个意思
#include stdio.h/*
编写一个程序,使得可以根据用户输入数值求下列分段函数的值。
(1) 当x0时,y=-x;(2) 当x10时,y=3x+5;(3) 当x为其他值时, y=2x-1。*/
int main(int argc, char *argv[])
{
int iX;
int iY; printf("Please input x:");
scanf("%d", iX);
fflush(stdin); //容错处理 if(iX 0)
{
iY = -iX;
} else if(iX 1)
{
iY = 3*iX + 5;
} else
{
iY = 2*iX - 1;
} printf("y=%d\n", iY);
return 0;
}