17、对于int *pa[5];的描述中,正确的是()。A.pa是一个指向数组的指针,所指向的数组是5个int型元素B.pa是一个指向某数组中第5个元素的指针,该元素是int型变量C.pa[5]表示数组的第5个元素的值,是int型的值D.pa是一个具有5个元素的指针数组,每个元素是一个int型指针

题目

17、对于int *pa[5];的描述中,正确的是()。

A.pa是一个指向数组的指针,所指向的数组是5个int型元素

B.pa是一个指向某数组中第5个元素的指针,该元素是int型变量

C.pa[5]表示数组的第5个元素的值,是int型的值

D.pa是一个具有5个元素的指针数组,每个元素是一个int型指针


相似考题
更多“17、对于int *pa[5];的描述中,正确的是()。”相关问题
  • 第1题:

    有如下的函数定义:

    int Xfun(int*a,int n){

    int X*a;

    for(int*pa=a+1;pa if(*pa>x)x=*pa;

    retum x;

    }

    若在执行了语句:

    int x[5]=(23,46,78,55,16);

    后,通过表达式Xfun(x,5)调用该函数,则得到的返回值为______。


    正确答案:78。
    78。 解析:函数Xfun()的作用是找出最大的数。

  • 第2题:

    设有定义:int A,*pA=&A;,以下scanf语句中能正确为变量A读入数据的是 ______。

    A.scanf ("%d",pA) ;

    B.scanf("%d",A) ;

    C.scanf("%d",apA) ;

    D.scanf("%d",*pA) ;


    正确答案:A
    解析:选项B中不是变量A的地址,错误;选项C是指针pA的地址,错误;选项D中*pA表示变量A的值,错误。

  • 第3题:

    已知int a,*pa=&a:输出指针pa十进制的地址值的方法是()。A.cout<

    已知int a,*pa=&a:输出指针pa十进制的地址值的方法是( )。

    A.cout<<pa;

    B.cout<<*p;

    C.cout<<&pa;

    D.cout<<long(pa);


    正确答案:D

  • 第4题:

    下面代码有何错误

    void func1()

    {

    int *pa = NULL;

    func2(pa);

    delete pa;

    }

    void func2(int *pb)

    {

    pb = new int(5);

    }


    正确答案:

     

  • 第5题:

    关于下列程序段的描述中,正确的是()。 include int fun(int,int); void main() { co

    关于下列程序段的描述中,正确的是( )。 #include<iostream.h> int fun(int,int); void main() { cout<<fun(1,2)<<endl; } int fun(int x,int y) { return X+y; }

    A.该函数定义正确,但函数调用方式错误

    B.该函数调用方式正确,但函数定义错误

    C.该函数定义和调用方式都正确

    D.该函数定义和调用方式都错误


    正确答案:C
    解析: 函数定义的一般形式:类型标识符函数名(形式参数列表){声明部分;语句}。函数调用的一般格式:函数名(实参列表)。而“int fun(int,int)”为函数声明,可以不写形参名,只写形参的类型。所以,可以看出函数fun的定义和调用都是正确的。

  • 第6题:

    设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是 A.scanf("%d",pa); B.scanf("%d",a); C.scanf("%d",&pa); D.scanf("%d",*pa);


    正确答案:A
        本题主要考查scanf函数。scanf函数可以用来输入任何类型的多个数据。
        scanf函数的一般形式为:
            scanf(格式控制,地址列表)
        “格式控制”是用双引号引起来的字符串,也称“转换控制字符串”;“地址列表”是由若干个地址组成的表列,可以是变量的地址或字符串的首地址。
    指针变量中只能存放地址(指针),&:取地址运算符。例如,&a为变量a的地址,*p为指针变量p所指向的变量。所以,可以在地址列表中的有pa和&a,故本题答案为A。

  • 第7题:

    若有int a=3,*pa; float f=4.5,*pf=&f;,则下列表述中,错误的是 ( )。

    A、pa=&a

    B、pa=&f

    C、pf=&f

    D、*pf=a+f


    参考答案B

  • 第8题:

    下列算式正确的是______。

    A.Int(5)=3

    B.Int(5)=2

    C.Int(5)=5

    D.Int(5)=0.5


    正确答案:B

  • 第9题:

    有以下变量说明,下面正确的语句是() int a=10,b; int &pa=a,&pb=b;

    • A、&pb=a;
    • B、pb=pa;
    • C、pb=&pa;
    • D、?pb=?pa;

    正确答案:B

  • 第10题:

    在下面的二维数组定义中,只有()语句是正确的。

    • A、int a[5][];
    • B、int a[](10);
    • C、int a[][];
    • D、int a[][5]={{1,2,3},{4,5}};

    正确答案:D

  • 第11题:

    对于int*pa[5];的描述中,正确的是()

    • A、pa是一个指向数组的指针,所指向的数组是5个int型元素
    • B、pa是一个指向某数组中第5个元素的指针,该元素是int型变量
    • C、pa[5]表示数组的第5个元素的值,是int型的值
    • D、pa是一个具有5个元素的指针数组,每个元素是一个int型指针

    正确答案:D

  • 第12题:

    单选题
    对于int *pa[5];的描述,正确的是(  )。
    A

    pa是一个指向数组的指针,所指向的数组是5个int型元素

    B

    pa是一个指向某个数组中第5个元素的指针,该元素是int型变量

    C

    pa[5]表示某个数组的第5个元素的值

    D

    pa是一个具有5个元素的指针数组,每个元素是一个int型指针


    正确答案: C
    解析:
    语句“int *pa[5]”定义一个指针数组pa,它指向一个int指针型数组,数组大小为5。

  • 第13题:

    下面程序编译时发现ma[3]=9错误,其原因是______。 include class FunArray { int*pa;

    下面程序编译时发现ma[3]=9错误,其原因是______。

    include<iostream.h>

    class FunArray

    {

    int*pa; //指向一个数组空问

    int size; //数组元素个数

    public:

    FunArray(int a[],int thesize):pa(a),size(thesize){}

    int Size( ){return size;}

    }

    };

    void main( )

    {

    int s[]={3,7,2,1,5,4};

    FunArray ma(s,sizeof(s)/sizeof(int));

    ma[3]=9;

    cout<<ma[3]<<endl;

    }


    正确答案:没有重载[]运算符
    没有重载[]运算符 解析:ma不是一般的数组,而是一个新定义的类,尽管该类封装了一个数组,但新类并没有提供[]操作符的具体实现,因此是错误的。

  • 第14题:

    下面程序输出的结果是( )。 int m=17; int fun(int x,int y) {int m=3; return(x*y-m); } main() {int a=5,b=7; printf("%d\n”,fun(a,B)/m); }


    正确答案:√
    1 解析:本题考查局部变量和全局变量的区别:局部变量是指作甩域在函数级和块级的变量,全局变量是指作用域在程序级和文件级的变量。

  • 第15题:

    设有定义:int a, *pa=&a;以下scanf语句中能正确为变量a读入数据的是( )。

    A.scanf("%d",pa);

    B.scanf("%d",a);

    C.scanf("%d",&pa);

    D.scanf("%d",*pa);


    正确答案:A
    解析:scanf函数是格式输入函数,用于输入任何类型的多个数据。该函数的一般形式为:scanf(格式控制,地址列表),其中“格式控制”是用双引号括起来的字符串,“地址列表”是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。题目中可以作为地址列表项的有pa和&a。所以,选项A)正确。

  • 第16题:

    对于int*pa[5];的描述,( )是正确的。

    A.pa 是一个指向数组的指针,所指向的数组是5个int型元素

    B.pa 是一个指向某数组中第5个元素的指针,该元素是int型变量

    C.pa[5]表示某个数组的第5个元素的值

    D.pa是一个具有5个元素的指针数组,每个元素是一个int型指针


    正确答案:D

  • 第17题:

    下列数组说明中,正确的是______。

    A.int array[][4];

    B.int array[][];

    C.int marray[][][5];

    D.int array[3][];


    正确答案:A

  • 第18题:

    下列程序中,正确的为______。

    A.main() { int *pb=&b; float 1>=15.25; print f("%d\n" ,*pb); }

    B.amin() { int a,*pa; a=10; *pa=a; prinffC%d",*pa); }

    C.main() { char s[20]; char *ps=&s; scanf("%s",*p); printf("%s",*p); }

    D.main() { char str[10]; int *ps=str[0]; str="abcdefg"; printf("%s",*p); }


    正确答案:B

  • 第19题:

    有以下程序: #include 〈iostream〉 using namespace std; class A { public: virtual void setx(int i,int j=0) { x=i; y=j; } virtual void print()=0; protected: int x,y; }; class B : public A { public: void print() { cout〈〈x*x〈〈", "; } }; class C : public A { public: void print() { cout〈〈x*x*x〈〈end1; } }; int main() { A *pa; B b; C c; pa=&b; pa->setx(5); pa->print (); pa=&c; pa->setx(2); pa->print(); return 0; } 程序运行后的输出结果是( )。

    A.25,8

    B.2,5

    C.5,2

    D.8,25


    正确答案:A
    解析:该程序中定义了A类、B类和C类共3个类。其中,类A是抽象类,它的类体内有一个纯虚函数pnnt()。抽象类不可以定义对象,但可以定义指向对象的指针。类B和类C都是类A的公有派生类,这些类是具体类,它们对A类中纯虚函数都有不同的实现。该程序的主函数中,定义一个指向类A对象的指针pa,又定义了类B和类C的2个对象,并使指针pa分别指向这些对象。这里,采用动态联编,在运行时选择print()函数。所以,执行语句序列“pa=&b;pa->setx(5);pa->print();”后,系统调用类B的print()函数,输出25;执行语句序列“pa=&c;pa->setx(2);pa->prim();”后,系统调用类C的prim()函数,输出8。

  • 第20题:

    对下列程序的描述中,正确的是()。includeusing namespace std;int Fun(int,int);int m

    对下列程序的描述中,正确的是( )。 #include<iostream> using namespace std; int Fun(int,int); int main() { cout<<Fun(5,50)<<end1; return 0; } int Fun(int x,int y) { return x*x+y*y; }

    A.该函数定义正确,但函数调用方式错误

    B.该函数调用方式正确,但函数定义错误

    C.该函数的定义和调用方式都是正确的

    D.该函数的定义和调用方式都是错误的


    正确答案:C
    解析:函数定义时要给出函数类型、函数名、函数参数表和函数体。本程序的Fun()都做到了,所以此函数的定义也是正确的。该函数的定义和调用方式都是正确的。

  • 第21题:

    下列有关数组的声明中,正确的是哪项?()

    • A、 int s[10];
    • B、 int[10]  s;
    • C、 int[5] s={l,2,3,4,5};
    • D、 int s[];

    正确答案:C,D

  • 第22题:

    假定变量a和pa定义为“doublea[10],*pa=a;”,要将12.35赋值给数组a中的下标为5的元素,不正确的语句是()。

    • A、pa[5]=12.35
    • B、a[5]=12.35
    • C、*(pa+5)=12.35
    • D、*(a[0]+5)=12.35

    正确答案:D

  • 第23题:

    单选题
    对于int*pa[5];的描述中,正确的是()
    A

    pa是一个指向数组的指针,所指向的数组是5个int型元素

    B

    pa是一个指向某数组中第5个元素的指针,该元素是int型变量

    C

    pa[5]表示数组的第5个元素的值,是int型的值

    D

    pa是一个具有5个元素的指针数组,每个元素是一个int型指针


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

  • 第24题:

    单选题
    有以下变量说明,下面正确的语句是() int a=10,b; int &pa=a,&pb=b;
    A

    &pb=a;

    B

    pb=pa;

    C

    pb=&pa;

    D

    ?pb=?pa;


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