重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你这个题是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
int
main()
{
int
n,m;
int
i;
double
s=0;
printf("Please
input
two
numbers.For
example,3,7\n");
scanf("%d
%d",n,m);
for(i=n;i
追问:
在主函数中调用一个函数求这个值怎么搞?
谢谢
评论
加载更多
int fun(int x )
{
if(x0 x!=3)
return x*x+x+6;
if((x=0 x10) (x!=2) (x!=3))
return x*x - 5*x+6;
return x*x-x-1;
}
希望能帮到你,望采纳!