有两个程序 出了点小错误 思考了很久 想不出为什么 新手一个 !
//#define LENGTH 20#include "stdio.h"
void main()
{
//float a;
//a=LENGTH*LENGTH;
//printf("a=%f\n",a);
float s;
double db;
s=11111.11;//有效位7位
db=11111.11111111111111111;/*双精度浮点数的变量,有效位为16位
,但是vc6.0规定小数后最多保留6位,其余舍去*/
printf("s=%f\n db=%f\n",s,db);
}
为什么 运行时 S不是等于11111.11 而是11111.111328?哪里错了?
#include "stdio.h"
int max(int x,int y)
{
int z;
if(x>y)
{
z=x;
}
else
{
z=y;
}
return(z);
}
main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
c = max(a,b);
printf("max=%d\n",c);
}
输入两个值 6和7 判断那个大 最后显示的是 max=6 为什么会这样 ?
我想了 很久 想不出为什么?
麻烦各位高手看看 小弟 感激不尽!
[ 本帖最后由 自强 于 2011-10-15 09:37 编辑 ]