从品牌网站建设到网络营销策划,从策略到执行的一站式服务
x改成float类型,第一句printf结尾的分号是中文的,没必要esle if,要清空缓冲区,否则程序会一闪而过
创新互联建站从2013年开始,是专业互联网技术服务公司,拥有项目网站制作、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元桑珠孜做网站,已为上家服务,为桑珠孜各地企业和个人服务,联系电话:18982081108
#includestdio.h
#includemath.h
void main()
{
float x;
printf("输入一个数X\n");
scanf("%f",x);
if (x0)
x=0;
else
x=2*x+1;
printf("%f\n",x);
fflush(stdin);
getchar();
}
你这个题是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;
}
}
#include stdio.h
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;
}
你只给出了X的取值范围,函数表达式呢,怎么没有给出?
我假设这样:
Y=X (X〈-1)
Y=1(-1〈=X〈=1)
Y=X*X(X〉1)
用C语言实现,输入X的值,求Y的值,那么可以表示为:
int function(int x)
{
int y;
if(x-1)
{
y=x;
}
else if((x=-1)(x=1))
{
y=1;
}
else
{
y=x*x;
}
return y;
}
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图