C语言简单面试题

类型分别为int , float,指针和bool的变量a 怎么用函数判断是否为"零"值?

浮点型变量并不精确,所以不可将float变量用“==”或“!=”与数字比较,应该设法转化为“>=”或"<="形式。具体如下:
int型变量:
if(a==0)
float型变量:
const float EPSINON=0.00001;
if((x>=-EPSINON)&&(x<=EPSINON)
指针变量:
if(a==NULL)
bool型变量:
if(!a)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-27
int IsZero(int Var){
if(Var) return 1;
else return 0;
}
int IsZero(float Var){
if(Var) return 1;
else return 0;
}

int IsZero(int Var){ //调用时在a前面加(int)
if(Var) return 1;
else return 0;
}

int IsZero(bool Var){
if(Var) return 1;
else return 0;
}本回答被网友采纳
第2个回答  2012-06-27
上面的有点问题,float绝对值小于无穷小为0
第3个回答  2012-06-27
int IsZero(int Var){
if(Var) return 1; else return 0;
相似回答