更多“有如下程序段,该程序的执行结果是()。 int x=23; do { printf(“%d”,x--);} while(!x);”相关问题
  • 第1题:

    有如下程序段: int x=3; do { printf("%d",x-=2);} while(!(--x)); 其输出结果是 ( )

    A.1

    B.3

    C.1-2

    D.死循环


    正确答案:C

  • 第2题:

    执行下面程序段的结果是( )。 int x=23; do {printf("%2d",x--); } while(! x);

    A.输出321

    B.输出23

    C.不输出任何内容

    D.陷入死循环


    正确答案:B
    解析:x--是先使用x的值,后进行自减运算,所以输出的结果应当为23。

  • 第3题:

    有以下程序段: int x=3; do { printf("%d",x-=2); } while(!(--x)); 其输出结果是 ______ 。

    A.1

    B.3 0

    C.1-2

    D.死循环


    正确答案:C
    解析:本题中循环执行了两次,第一次,执行完printf语句后,x=1,而-x是先自减后执行语句,所以(!(-x))的值为非零,所以又执行了一次。第二次x的值为-2,-x的值为-3,求非后,值为0,跳出循环。

  • 第4题:

    有以下程序: #include<stdio.h> main { int x=4,y; do { y=x; if(!y)printf("x"); else printf("y"): x--; }while(x); } 程序的输出结果是( )。

    A. xyyx

    B.yyyy

    C.yyxx

    D.yxyx


    正确答案:C
    本题考查do-while语句和if…else语句。do-while语句的功能是先执行循环体再判断条件,所以,先判断if语句的条件,y=-4,!y为逻辑0,条件不成立,执行下面的else语句,输出y,然后将x的值减1,x=3,条件不成立,执行下面的else语句,输出Y,然后将X的值减1,x=2,满足while循环条件,继续循环。第三次循环:先判断if语句的条件,y=2,!y为逻辑0,条件不成立,执行下面的else语句,输出y,然后将X的值减1,x=l,满足while循环条件,继续循环。第四次循环:先判断if语句的条件,y=-1,!y为逻辑0,条件不成立,执行下面的else语句,输出Y,然后将x的值减1,x=0,不满足while循环条件,结束循环。所以B正确。

  • 第5题:

    有如下程序:includemain(){int x=23; do {Printf("%d",x--);} while(! x);}该程序的执

    有如下程序: #include <stdio.h> main() { int x=23; do { Printf("%d",x--);} while(! x); } 该程序的执行结果是( )。

    A.321

    B.23

    C.不输出任何内容

    D.陷入死循环


    正确答案:B
    解析:do-while语句的执行过程中要先执行一次循环体语句,本题中执行x--后判断while中的表达式,表达式的值!x为假,程序结束循环。

  • 第6题:

    有如下程序: main() { int x=23; do { printf("%d",x--); } while(!x); } 程序运行后的输出结果是( )。

    A.321

    B.23

    C.不输出任何内容

    D.陷入死循环


    正确答案:B
    解析:本题中使用do-while循环,每执行一次循环体输出x的值后将x减1。当x=23,执行循环体输出x为23,X=X-1=23-1=22,判断循环条件是否成立,因为x=22,!x的值为0,终止循环,因此只输出23。

  • 第7题:

    有如下程序 main() { int x=3; do { prinff("%d",x--);} while(!x); } 该程序的执行结果是_____。

    A.321

    B.3

    C.不输出任何内容

    D.陷入死循环


    正确答案:B
    解析:本题x赋初值为3,当执行printf("%d",x-);时,由于x-的作用是先运算x,再将x的值减1,所以,printf输出的x值为3,等输出后,x的值减1变为2,继续执行,判断条件!x为假,循环只被执行一次。

  • 第8题:

    有以下程序段:

    int x=3;

    do

    {printf("%d",x-=2);)

    while(!(--x));

    其输出结果是( )。

    A.1

    B.3 0

    C.1 -2

    D.死循环


    正确答案:C
    本题考查do-while循环,先执行d0输出的x的值为1,接着执行while语句,此时--x的值为0,x也为0,而非0为1,循环成立,接着执行do输出X值为-2,执行--x后,表达式为-2,而!(--x)为0,退出循环。

  • 第9题:

    有如下程序段:int x=3,do{ x-=2;cout<<x;}while(!(--x));执行这个程序段的输出结果是( )。

    A.1

    B.30

    C.1-2

    D.死循环


    正确答案:C

  • 第10题:

    执行下面程序段的结果是______。 int x=234; do { printf("%3d\n",x--); } while(!x);

    A.432

    B.234

    C.0

    D.234到1的自然数


    正确答案:B

  • 第11题:

    执行下面程序片段的结果是( ) int x=123; do { printf("%3d\n",x--);} while(!x);

    A.打印出321

    B.打印出123

    C.不打印任何内容

    D.陷入死循环


    正确答案:B

  • 第12题:

    单选题
    有以下程序:#includemain(){ int x=23; do {  printf(%2d,x--); } while(!x);}程序的执行结果是(  )。
    A

    输出321

    B

    输出23

    C

    不输出任何内容

    D

    陷入无限循环


    正确答案: A
    解析:
    “%2d”表示按宽度为2,右对齐方式输出,若不够两位,左边补空格。程序执行过程为:输出x为23,之后x自减得x=22,!x为假,while条件不成立,退出循环。此题需要注意x--和--x的区别,在逻辑表达式中,x--是先传递x的值,再执行自减1,此题就是这种情况,--x是先自减1,再执行传递x的值。答案选择B选项。

  • 第13题:

    有如下程序 main() { int x=3; do { printf("%d",x--);} while(!x); } 该程序的执行结果是______。

    A.321

    B.3

    C.不输出任何内容

    D.陷入死循环


    正确答案:B
    解析:本题x赋初值为3,当执行printf("%d",x-);时,由于X--的作用是先运算x,再将x的值减1,所以,printf输出的x值为3,等输出后,x的值减1变为2,继续执行,判断条件!x为假,循环只被执行一次。

  • 第14题:

    以下程序段的输出结果是( )。 int x=5; do { x--; }while(!x);

    A.5

    B.无任何输出

    C.4

    D.陷入死循环


    正确答案:A
    解析:本题考查循环语句do-while语句的执行情况。根据do-while循环语句功能特点可得:首先无条件执行循环体,表达式x一的值为5,输出为5,x的值变为4,然后检查条件(!x)为假(false),则循环结束。

  • 第15题:

    有以下程序: main() { int x=0xFFFF; printf("%d\n",x--); } 执行后的输出结果是( )

    A.32767

    B.FFFE

    C.-1

    D.-32768


    正确答案:C

  • 第16题:

    有下列程序: inelude main() { int x=8; for(;x>0;x--)

    有下列程序: #inelude <stdio.h> main() { int x=8; for(;x>0;x--) { if(x%3) {printf("%d,",x--);continue;} printf("%d,",--x); } } 程序的运行结果是( )。

    A.7,4,2

    B.8,7,5,2

    C.9,7,6,4

    D.8,5,4,2


    正确答案:D
    解析:“x--”表示先执行程序,再令x的值减1;而“-x”表示令x的值减1,再执行程序。x=8时,x%2为非0值,执行语句{printtr("%d,", x--); continue;),输出“8,”,此时经过x--,x的值变为7,跳出此次循环;执行x--,x=6,x%3=0,后面语句不执行,执行语句print("%d,",--x);,输出“5,”:执行for语句中的x--,得到x=5,输出“5,”判断x%3,输出“4,”,执行两次x--后,x=2,执行{printf("%d,",x--);continue;}后,输出“2,”;然后执行两次x-后,x=0,不符合“x>0”,循环全部结束。

  • 第17题:

    下列程序的执行结果是_____。main(){ int x=23; do { printf("%d",x--);} while(!x);}

    A.321

    B.23

    C.不输出任何内容

    D.陷入死循环


    正确答案:B

  • 第18题:

    有下列程序: main() { int x=5; do {printf("%d",x-=4);} while(!(--X)); } 程序的输出结果是( )。

    A.1

    B.20

    C.1-4

    D.死循环


    正确答案:C
    解析: 本题考查do…while循环。①执行printf语句,x=x-4=1,输出1,判断while循环的控制条件, --x=0,则(!(--X))非零,循环条件成立,执行下一次循环;②执行printf语句,x=x-4=-4,输出-4,判断while循环的控制条件,--X=-5,则(!(--x))为零,循环条件不成立,结束循环。

  • 第19题:

    下面程序段的执行结果是( )。 int x=10; for(;x;x--) { if(x%3) continue; printf("%d",x); }

    A.875421

    B.963

    C.741

    D.852


    正确答案:B
    解析:本题的for循环省略了第一个表达式,即for没有任何初始化动作;第二个表达式x的意思是只要x非0,则循环继续;第三个表达式让x在每次循环结束时减1。x初始为10,然后进入循环体,判断x是否能被3整除,不能整除则执行continue;语句进入下一次循环,能整除则输出x。故最终输出的结果为从10递减到1之中能被3整除的数9、6和3。所以正确答案是B。

  • 第20题:

    有以下程序:

    #include<stdio.h>

    main

    { int x=4,y;

    do

    { y=x;

    if(!y)printf("x");

    else

    printf("y"):

    x--;

    }while(x);

    }

    程序的输出结果是( )。

    A.A.xyyx

    B.yyyy

    C.yyxx

    D.yxyx


    正确答案:B
    本题考查do-while语句和if…else语句。do-while语句的功能是先执行循环体再判断条件,所以,先判断if语句的条件,y=-4,!y为逻辑0,条件不成立,执行下面的else语句,输出y,然后将x的值减1,x=3,条件不成立,执行下面的else语句,输出Y,然后将X的值减1,x=2,满足while循环条件,继续循环。第三次循环:先判断if语句的条件,y=2,!y为逻辑0,条件不成立,执行下面的else语句,输出y,然后将X的值减1,x=l,满足while循环条件,继续循环。第四次循环:先判断if语句的条件,y=-1,!y为逻辑0,条件不成立,执行下面的else语句,输出Y,然后将x的值减1,x=0,不满足while循环条件,结束循环。所以B正确。

  • 第21题:

    下列程序段的输出结果是______。int x=3;do{ printf("%d",x-=2);}while (!(--x));

    A.1

    B.30

    C.1-2

    D.死循环


    正确答案:C

  • 第22题:

    执行下列程序段后的的输出结果是( ) x=9; while( x>7) { printf("*");x--;}

    A.****

    B.***

    C.**

    D.*


    正确答案:C
    注意执行while循环前,变量x的初值为9.第1次执行while循环,控制循环的条件为“x>7”,这时x为9,条件成立,执行循环体:输出单个“*”,x再减1,x为8。继续循环,控制循环的条件是“x>7',现在x为8,条件成立,输出“*”后x减1,现在x为7。继续循环时,控制循环的条件不满足,退出循环。所以本段程序执行后,输出结果为两个“*”,本题答案应选C。

  • 第23题:

    执行下列程序的输出结果是()。  #include   main( )  {   int x=10;      do{   x--;      }while(--x);  printf(“%d/n”,x--);  } 


    正确答案:0

  • 第24题:

    填空题
    执行下列程序的输出结果是()。  #include   main( )  {   int x=10;      do{   x--;      }while(--x);  printf(“%d/n”,x--);  }

    正确答案: 0
    解析: 暂无解析