请阅读程序: #include<math.h> #include<stdio.h> main() { float a,b,c; scanf("%f%f",&a,&b); c=a/b;

admin2019-04-24  21

问题 请阅读程序:
    #include<math.h>
    #include<stdio.h>
    main()
    {  float a,b,c;
       scanf("%f%f",&a,&b);
       c=a/b;
       while(1)
    {
       if(fabs(c)>1.6)
       {
         a=b;
         b=c;
         c=a/b;
       }
       else break;
    }
    printf("%f\n",b);
  }
    若运行时从键盘上输入3.6 2.4<回车>,则输出结果是(    )。

选项 A、1.500000
B、1.600000
C、2.000000
D、2.400000

答案D

解析 本题考查甩break语句终止循环。程序中定义了两个实型变量a、b,并给scanf()函数赋值,键盘输入3.6 2.4<回车>后,a=3.6,b=2.4,c=a/b=3.6/2.4=1.5,因为c=1.5<1.6,退出循环,输出b的原值。表面上看,while(1)条件恒为真,将会产生死循环,但利用break语句可以终止循环。
转载请注明原文地址:https://kaotiyun.com/show/UQRp777K
0

最新回复(0)