求解一道C程序的问题main(){floatx=2.0,y;if
main() { flt x=2.0,y; if(x<0.0) y=0.0; else if((x<5.0)&&(!x)) y=1.0/(x+2.0); else if(x<10.0) y=1.0/x; else y=1.0; printf("%f\n",y); } 上面的程序运行后得出的结果为:0.500000 我有以下几个问题不明白,请各位高手指教: 1: else if((x<5.0)&&(!x)) y=1.0/(x+2.0); 中的(!x)是什么意思,难道是自己否定自己吗? m
多重条件语句范围有重叠,导致路径不唯一,再有还是去补习一下C的那些基本知识吧,你不知道除法运算符吗?