C语言,请问这个结果出来为啥是特别大的负数QAQ

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
float pi,r,h,s,v;
scanf("%f,%f",&r,&h);
pi=3.1415926;
s=2*pi*r*h;
v=pi*r*r*h;
printf("%.2f,%.2f\n",s,v);

system("pause");
return 0;
}

运行结果:

你这种情况是溢出了,你可以用double或者long double试一下。看一下计算机组成原理你就直到为什么会溢出了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-04-01
scanf( "%f,%f", &r, &h );
你中间定义的是用 英文 的逗号
你在控制台中输入的是 中文 的逗号
所以出错。
你输入:10,10,就不会错。本回答被网友采纳

C语言,请问这个结果出来为啥是特别大的负数QAQ
你这种情况是溢出了,你可以用double或者long double试一下。看一下计算机组成原理你就直到为什么会溢出了。

C语言:求ax^2+bx+c=0方程的解
第一:第10行到第27行应该用大括号括起来,因为都是a不等于0的时候才做的处理 第二:输入严重错误,你在scanf中,三个%lf用的是逗号分隔,你在实际输入的时候也必须是逗号分隔,不能使用空格,否则a、b、c三个变量的值无法正确获取 第三:求共轭复根处有严重问题,因b*b-4*a*c已是负数,没...

急求2007.2008.2009.2010四年的安徽中考数学试题!!!谢谢QAQ!!!
1.在-1,0,1,2这四个数中,既不是正数也不是负数的是( )A.-1 B.0 C.1 D.22.计算(2x)3÷x的结果正确的是( )A.8x2 B.6x2 C.8x3 D.6x33.如图,直线l1∥l2,∠1=55°,∠2=65°,则∠3为( )A.50° B.55° C.60° D.65°4.2010年一季度,全国城镇新增就业人数为289万人,用科学记数...

相似回答