itgle.com
更多“有以下程序main(){ int y=10;while(y--);printf("y= % d\n",y);}程序执行后的输出结果是A)y ”相关问题
  • 第1题:

    有下列程序:

    #include"stdio.h"

    main()

    { int x=0;

    int y=0;

    while(x<7&&++y)

    { y--;

    x++;}

    printf("%d,%d",y,x);

    }

    程序的输出结果是( )。

    A.0,7

    B.7,7

    C.0,6

    D.1,6


    正确答案:A
    解析:本题考查while循环。y的值在while循环的控制表达式中加1,在循环体内减1,所以总的y值不变,且控制条件++y永远非零。当x加到7时不满足循环条件,结束循环。

  • 第2题:

    下面程序的运行结果是()。includemain(){int y=10; do{y--;}while(--y); printf("%d\n"

    下面程序的运行结果是( )。 #include<stdio.h> main() { int y=10; do{y--;}while(--y); printf("%d\n",y--); }

    A.-1

    B.1

    C.8

    D.0


    正确答案:D
    解析:本题考查“++”和“--”运算符,运算符“++”是操作数加1,而“--”则是操作数减1。在do-while循环中,首先执行y--,再执行--y。当y=2时,执行y--,y的值变为1,--y使y值变为0,循环结束。执行输出时,先输出y的值0,然后执行y--,使y的值变为-1。

  • 第3题:

    下面程序的运行结果是______。includemain(){ int y,a;y=2,a=1;while(y--!=-1){do{a*=y;

    下面程序的运行结果是______。

    include<stdio.h>

    main()

    { int y,a;

    y=2,a=1;

    while(y--!=-1)

    {do{a*=y;a++;}while(y--);}

    printf("%d,%d",a,y);}


    正确答案:

  • 第4题:

    有以下程序:include main(){inty=9;for( ; y>0; y--)if(y%3==0) printf("%d", --y);}

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

    A.741

    B.963

    C.852

    D.875421


    正确答案:C
    解析:本题首先令y为9,然后通过一个for循环,当y还大于0则循环,每次循环让y递减1。循环体中是一条if语句,通过%运算符计算每当y能被3整除的时候,输出--y的值,即先将y减1,然后输出y的值。故当y等于9、6、3时会输出,输出值分别为8、5、20所以应该选择C。

  • 第5题:

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

    A.y=0

    B.y=-1

    C.y=1

    D.while构成无限循环


    正确答案:B
    解析:本题中有一个陷阱,很多考生会根据程序的书写格式来判断:while循环的循环体为printf("y=%d\n",y);语句。其实while的循环体是一条空语句,即y--后面的那个分号就是while的循环体。所以本题只要弄清楚表达式y--何时为“假”,即等于0,就能得出结果了。因为--运算符是后缀形式,所以表达式y--的值是y自减之前的值,即y等于。时,表达式y--就等于0了。但此时的y还要被减1,所以循环结束后,y的值为-1。故应该选择B。

  • 第6题:

    有下列程序: main() { int y=20; do{y--;} while(--y); printf("%d\n",y--); } 当执行程序时,输出的结果是( )。

    A.-1

    B.1

    C.4

    D.0


    正确答案:D
    解析: 本题考查do…while循环。当--y是0(即y是0)时结束循环,输出y--是先输出y的值再将y的值减1。

  • 第7题:

    有下列程序: main { int y=10; do{y--;}while(--y); printf("%d\n",--y); ) 当执行程序时,输出的结果是( )。

    A. -1

    B.1

    C.4

    D.0


    正确答案:A
    本题考查do-while循环。当--y是0(即y是o)时结束循环,输出--y,先将y的值减1再输出Y的值。

  • 第8题:

    有下列程序:

    main

    { int y=10;

    do{y--;}while(--y);

    printf("%d\n",--y);

    )

    当执行程序时,输出的结果是( )。

    A.-1

    B.1

    C.4

    D.0


    正确答案:D
    本题考查do-while循环。当--y是0(即y是o)时结束循环,输出--y,先将y的值减1再输出Y的值。

  • 第9题:

    有以下程序

    #include<stdio.h>

    main( )

    {int y=10

    while(y--);

    printf(“y=%d\n”,y);

    }

    程序执行后的输出结果是( )。

    A.y=0

    B.y=-1

    C.y=1

    D.while构成无限循环


    正确答案:B
    解析:y-的作用是先取其值作为表达式的值,然后y的值减1存入y。当y>0时循环继续,直到y=0时循环结束,然后y值减1存入y中,所以选B。

  • 第10题:

    有以下程序:includo main(){int y=10; while(y--)printf("y=%d\n",y);} 程序执行后的

    有以下程序: #includo <stdio.h> main() { int y=10; while(y--)printf("y=%d\n",y); } 程序执行后的输出结果是( )。

    A.y=0

    B.y= -1

    C.y=1

    D.while 构成无限循环


    正确答案:B
    解析:程序首先判断y值是否非0,显然y=10满足条件,y自减1,再次执行while语句,判断y为9的值是否满足条件,满足条件,y自减1,……,直到y为0,条件不成立,结束循环,y自减1后变为-1,所以输出结果为y=-1。

  • 第11题:

    下列程序的输出为( ).  main( )  {  int  y=10;      while(y--);判断真假      printf("y=%d/n",y);   }

    • A、y=0
    • B、while构成无限循环
    • C、y=1
    • D、y=-1

    正确答案:D

  • 第12题:

    单选题
    有以下程序      main( )  {int y=10;  while(y--);printf(”y=%d/n”,y);      }  程序执行后的输出结果是()
    A

    y=0

    B

    y=-l

    C

    y=1

    D

    while构成无限循环


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

  • 第13题:

    若有以下程序 main() {int y=10; while(y- -); printf(“y=%d\n”y); } 程序运行后的输出结果是()

    A: y=0

    B: y=-1

    C: y=1

    D: while构成无限循环


    正确答案: B

  • 第14题:

    有以下程序

    void f( int y, int *x)

    { y=y+*x; *X=*X+y; }

    main()

    { int x=2,y=4;

    f(y,&x);

    printf("%d %d\n",x,y);

    }

    执行后输出结果是______。


    正确答案:8 4
    8 4 解析:本题考核的知识点是函数的调用、值传递和地址传递的区别。“值传递”指实参将值传递给形参后,实参与形参再无联系。也就是说对行参的改变将不影响实参;地址传递是指地址或数组名作为形参时的参数传递,这种情况下对形参的改变将对实参产生影响.函数 f(Y*x)的作用是让y的值加上指针x所指向变量的值,让指针x所指向变量的值加上y的值。由于形参y是传值的,形参x是传地址的,故调用该函数后,作为实参的y的值将不改变,而实参x的值将改变,故最后输出的y的值为4,而x的值为8。

  • 第15题:

    执行下列程序后的输出结果是______。main(){ int y=10; do {y--;}while(--y); printf("%d\n",y--);}

    A.-1

    B.1

    C.8

    D.0


    正确答案:D

  • 第16题:

    有以下程序 include main() { int y=9; for( ; y>0; y--) if(y%

    有以下程序 #include <stdio.h> main() { int y=9; for( ; y>0; y--) if(y%3==0) printf("%d",--y); } 程序的运行结果是

    A.741

    B.963

    C.852

    D.875421


    正确答案:C
    解析:本题首先令y为9,然后通过一个for循环,当y还大于0则循环,每次循环让y递减1。循环体中是一条if语句,通过%运算符计算每当y能被3整除的时候,输出--y的值,即先将y减1,然后输出y的值。故当y等于9、6、3时会输出,输出值分别为8、5、2。所以应该选择C。

  • 第17题:

    有以下程序: #include<stdio.h> main {int y=10; while(y--); printf("y=%d\n",y); } 程序执行后的输出结果是( )。

    A.y=0

    B.y=-1

    C.y=l

    D.while构成无限循环


    正确答案:B
    y--的作用是先取其值作为表达式的值,然后Y的值减1存入Y。当y>0时循环继续,直到y=0时循环结束,然后Y值减l存入Y中,所以选B。

  • 第18题:

    有下列程序:

    main()

    { int y=20;

    do{y--;}while(--y);

    phntf("%d\n",y--);

    }

    当执行程序时,输出的结果是( )。

    A.-1

    B.1

    C.4

    D.0


    正确答案:D
    解析:本题考查do…while循环。当--寸是0(即y是0)时结束循环,输出y--是先输出y的值再将y的值减1。

  • 第19题:

    有以下程序 main() { int y=10; do {y--;}while(--y); printf("%d\n",y--); } 程序运行后的输出结果是( )

    A.-1

    B.1

    C.8

    D.0


    正确答案:D

  • 第20题:

    有以下程序 main() {int y=10; while(y-);printf("y=%d\n",y); } 程序执行后的输出结果是______。

    A.y=0

    B.y=1

    C.y=1

    D.while构成无限循环


    正确答案:B
    解析:此题考核的是while条件语句及自减运算。当while的条件表达式成立时(非零),重复执行循环体,但此题的 while循环无循环体,则只要while的条件表达式成立,就不断执行while条件表达式,直到其条件表达式不成立,程序就自动跳出while循环,直接执行printf语句。“y—”表示先运用y的值,再进行y自减。本题一开始先判断y为10的值是否满足条件(同时y的值自减1),显然y=1O条件满足,则再次执行while语句,判断y为9的值是否满足条件 (同时y的值自减1)……直到判断y为0的值是否满足条件(同时y的值自减1,即y=-1),此时条件为假,退出循环,执行printf语句,输出y=-1。

  • 第21题:

    有以下程序includemain0{inty=9; for( ;y>0;y--) if(y%3==0)printf("%d",--y);}程序的

    有以下程序 #include <stdio.h> main0 { int y=9; for( ;y>0;y--) if(y%3==0) printf("%d",--y); } 程序的运行结果是

    A.741

    B.963

    C.852

    D.875421


    正确答案:C
    解析:本题考查变量的自加“++”和自减“--”问题。当y的值为9、6或3时,if语句的条件成立,执行输出语句,输出表达式--y的值,y的自减要先于输出语句执行,故输出结果为8 5 2。

  • 第22题:

    有以下程序      main( )  {int y=10;  while(y--);printf(”y=%d/n”,y);      }  程序执行后的输出结果是()

    • A、y=0
    • B、y=-l
    • C、y=1
    • D、while构成无限循环

    正确答案:B

  • 第23题:

    以下程序的输出为() #include void main(){inty=5;while(y--);printf("y=%d/n",y);}

    • A、y=0
    • B、无限循环,无结果输出
    • C、y=1
    • D、y=-1

    正确答案:D