- 求解一道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的那些基本知识吧,你不知道除法运算符吗?