有以下程序: #include <stdio.h> main() { int s=0,a=1,n; scanf("%d",&n); do {s+=1;a=a-2;} while(a!=n);

admin2013-02-23  14

问题 有以下程序:    #include  <stdio.h>    main()    {  int s=0,a=1,n;       scanf("%d",&n);       do {s+=1;a=a-2;}       while(a!=n);       printf("%d\n",s);    }   若要使程序的输出值为2,则应该从键盘给n输入的值是(    )。

选项 A、-1
B、-3
C、-5
D、0

答案2

解析 本题考查do-while语句。当n=-1时,s+=1,s=1;a=a-2=-1;a! =n不成立,结束循环,此时s值为1,不符合题意;当n=-3时,s+=1,s=1;a=a-2=-1;a! =n成立,继续循环,s=s+1=2,a=a-2=-3;a! =n不成立,此时s值为2,符合题意。
转载请注明原文地址:https://kaotiyun.com/show/KYPp777K
0

最新回复(0)