更多“给出以下程序:SET TALK OFFX=0Y=0DO WHILE X<100X=X+1IF INT(X/2)=X/2LOOPELSEY=Y+XENDIFENDDO?" ”相关问题
  • 第1题:

    下列程序段执行以后,内存变量Y的值是( )。x=34567y=0DO WHILE x>;0y=x%l0+Y*10x=int(x/10)ENDD0

    A.3456

    B.34567

    C.7654

    D.76543


    正确答案:D
    INT数值表达式>的功能是返回数值表达式的整数部分。DOWHILE表达式条件>ENDD0,当表达式条件>为真时执行循环体,当遇到ENDD0则自动返回到DOWHILE语句继续判断循环条件是否成立,以决定是否继续循环。当表达式条件>为假时结束循环,执行ENDDO后面的语句。

  • 第2题:

    有以下程序:include void f(int * x,int * y) int t;t= *x; *x= *y; *y=t;main ( ){in

    有以下程序:#include <stdio.h>void f(int * x,int * y) int t; t= *x; *x= *y; *y=t;main ( ){ int a[8] = { 1,2,3,4,5,6,7,8} ,i, * p, * q; p=a;q =&a[7]; while(p<q) { f(p,q) ;p ++ ;q --; } for(i =0;i<8;i ++ ) printf(" % d," ,a[i]); }程序运行后的输出结果是( )。

    A.8,2,3,4.,5,6,7,1,

    B.5,6,7,8,1,2,3,4,

    C.1,2,3,4,5,6,7,8,

    D.8,7,6,5,4,3,2,1,


    正确答案:D
    解析:程序中函数f的作用是交换指针变量x和y所指向的存储单元的值。在main函数中,通过P=a;q=&a[7];指针变量p指向数组的第一个元素,指针变量q指向数组的最后一个元素。通过调用函数f(p,q)进行前后对称位置上的数组元素的交换。当while循环4次(即p=q)后,a数组中各元素的值分别为8,7,6,5,4,3,2,1,所以程序输出的结果为:8,7,6,5,4,3,2,1,

  • 第3题:

    循环语句while (!x&&!y)中的循环条件表达式等价于

    A.x=0 && y=0

    B.!(x || y)

    C.!(x==0 || y==0)

    D.!(x==0 && y==0)

    E.!(x!=0||y!=0)


    (x || y);!(x!=0||y!=0)

  • 第4题:

    下列程序段执行以后,内存变量y的值是( )。 x=34567 y=0 DO WHILE x>0 y=x%10+y*10 X=int(x/10) ENDDO

    A.3456

    B.34567

    C.7654

    D.76543


    正确答案:D
    解析:在此程序中,首先为将变量X和Y分别赋值为34567和0,然后进入循环。而%表示取余数,则34567%10的结果为7,并将其赋值给Y,接下来将X值除10取整后的值(3456)赋值给X,此时X值>0,再次进行循环。此时Y值为7,执行Y=X%10+Y*10语句后,Y值为76,而X值经除10取整后,为345再次进行循环,以此类推,直至X值等于0时退出循环,此时Y值为76543。

  • 第5题:

    循环语句while (!x&&!y)中的循环条件表达式等价于

    A.!(x || y)

    B.!(x!=0||y!=0)

    C.x=0 && y=0

    D.!(x==0 || y==0)

    E.!(x==0 && y==0)


    (x || y);!(x!=0||y!=0)