有以下程序: #include<stdio.h> #include<math.h> main() {doublex,y,z; scanf("%lf%lf",&x,&y); z=x/y; while(1) if(fabs(z)>1.0) {x=y;y=x;z

admin2020-11-27  7

问题 有以下程序:
#include<stdio.h>
#include<math.h>
main()
{doublex,y,z;
scanf("%lf%lf",&x,&y);
z=x/y;
while(1)
if(fabs(z)>1.0)
{x=y;y=x;z=x/y;}
else break;
printf("y=%f\n",y);
}
执行时输入:3.6 2.4<回车>,则输出结果是(    )。

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

答案A

解析 题目中程序执行过程中关键语句z=x/y的结果为:z=1.5,if条件成立,x=2.4,y=2.4,z=1.0,下一次循环if条件不成立跳出循环,按照格式打印y值为2.400000。故答案为A选项。
转载请注明原文地址:https://kaotiyun.com/show/bd3p777K
0

最新回复(0)