参考答案和解析
正确答案:x=2y=1
x=2,y=1
更多“下面程序的运行结果是( )。 define EXCH(a,B){int t;t=a;a=b;b=t;} main() {int x=1,y=2; EXCH(x, ”相关问题
  • 第1题:

    有以下程序: #include<stdio.h> void exch(int t[]) { t[0]=t[s];} main( ) { int x[10]={1,2,3,4,5,6,7,8,9,10},i=0; while(i<=4){exch(&x[i]);i++;} for(i=0;i<5;i++)printf("%dl"x[i]); printf("\n"); } 程序运行后输出的结果是( )。

    A.2 4 6 8 10

    B.1 3 5 7 9

    C.1 2 3 4 5

    D.6 7 8 9 10


    正确答案:D
    本题中exch函数是用数组中的第6个元素对第1个元素进行赋值,所以数组的值应该为678910。

  • 第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题:

    运行程序,程序输出结果是(). void sub (int *s, int *y ) { static int t=3 ; *y=s[t] ; t - -; } int main() { int a[ ]={1,2,3,4}, i , x=0; for (i = 0; i<4; i++) { sub (a,&x ) ; cout<<x;} cout<<endl; return 0 ; }

    A.4321

    B.1234

    C.0000

    D.4444


    x=3

  • 第4题:

    下面程序的运行结果是includevoid fun(int*a,int*b){int X= *a;* a= *b;*b=X;cout<

    下面程序的运行结果是 #include<iostream,h> void fun(int*a,int*b) { int X= *a; * a= *b; *b=X; cout<< *a<< *b<<" "; void main() int x=1, y=2; fun(&x,&y); cout<<X<<y<<end1; }

    A.12 12

    B.12 21

    C.21 12

    D.21 11


    正确答案:D
    解析:本题考查的是指针和引用,函数fun完成把x和y互换的操作。

  • 第5题:

    下面程序和运行运行结果是【 】。

    void swap(int * a,int * b)

    { int * t;

    t=a; a=b; b=t;

    }

    main( )

    { intx=3,y=5,* p=&x,* q=&y;

    swap(p,q);

    prinff("%d %d\n", *p, *q);}


    正确答案:3 5
    3 5 解析:本题swap( )函数的功能是实现两个数的交换,但它为无返回值型。