经典指数          
原因
3094
浏览数
0
收藏数
 

有如下程序段:
int	i, n = 0;
float x = 1, y1 = 2.1 / 1.9, y2 = 1.9 / 2.1;
for ( i = 1; i < 22; i++ )
 x = x * y1;
while ( x != 1.0 )
{
 x = x * y2; n++;
}
printf( “ %d / n ”, n );
请问执行结果是:
  • 21
  • 22
  • 无限循环
  • 程序崩溃

     举报   纠错  
 
切换
1 个答案

分析:浮点数的比较不可以用 = = 或者 != ,详见找工作笔试面试那些事儿(1)---C,C++基础和编程风格(2) ,会一直循环下去,选择C

 
切换
撰写答案