有如下程序: main() { int s=0, a=1,n; scanf("% d", &n); do { s+=1; a=a-2;} while(a!=

admin2013-06-11  27

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

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

答案B

解析 本题中如果printf函数输出为2,需要执行两次s+=1语句,第一次执行完循环语句后得s=1、a=1-2=-1,第二次执行完循环语句后得s=1+1=2、a=-1-2=-3,所以正确答案为-3。
转载请注明原文地址:https://kaotiyun.com/show/euJp777K
0

最新回复(0)