更多“程序已有部分语句: int a=5,t=3,*p; p=&a; 对于指针变量p的使用,下面不正确的赋值语句是()。”相关问题
  • 第1题:

    类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i} private: int value; }; 则对下列语句序列正确的描述是( )。 MyClass*P,my;p=&my;

    A.语句p=&my;是把对象my赋值给指针变量P

    B.语句MyClass*p,my;会调用两次类MyClass的构造函数

    C.对语句*P.SetVariabte(5)的调用是正确的

    D.语句p->SetVariable(5)与语句my.SetVariable(5)等价


    正确答案:D
    解析: 语句p=&my,是把对象my的地址值赋值给指针变量P;语句MyClass*p,my;,由于p只是一个指向对象的指针,因此定义指针p不调用构造函数,所以此语句只调用一次构造函数;讨成员函数的引用可以通过两种形式:指针->成员函数(形参表)或者对象名、成语函数名(形参表)。

  • 第2题:

    设有语句:“int a=1,b=2,*p1=&a,*p2=&b;”,则使指针p1指向变量b的赋值语句是______。

    A.p1=*p2

    B.*p1=p2

    C.p1=p2

    D.*p1=*p2


    正确答案:D
    解析:对于定义int*p,*q;,可以通过赋值语句p=q;,把指针变量q中的地址值赋给指针变量p,从而使这两个指针变量指向同一地址。

  • 第3题:

    有如下定义语句:int a[]={1,2,3,4,5};,则对语句int*p=a;正确的描述是( )。

    A.语句int*p=a;定义不正确

    B.语句int*p=a;初始化变量p,使其指向数组对象a的第一个元素

    C.语句int*p=a;是把a[0]的值赋给变量p

    D.语句iht*p=a;是把a[l]的值赋给变量p


    正确答案:B

  • 第4题:

    在下面语句中,其含义为“p为指向含n个元素的一维数组的指针变量”的定义语句是 ( )

    A.int p [n]

    B.int * p( );

    C.int * p(n);

    D.int( * p)[n]


    正确答案:D

  • 第5题:

    l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。A.float*p=&x;S

    l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。

    A.float*p=&x;

    B.int*p-(float)x;

    C.float p=&x;

    D.float*p=1024;


    正确答案:A
    指针是用来存放地址的变量,用(类型名*指针变量名)的形式定义。赋值时应将某个变量地址即&x赋给指针变量,因此选择A)。

  • 第6题:

    类MyClass的定义如下: class MyClass { pubfic: MyClass(){value=0;} SetVariable(int i){value=i;) private: intvalue; }; 则对下列语句序列正确的描述是( )。 MyClass*p,my;p=&my;

    A.语句p=&my;是把对象my赋值给指针变量p

    B.语句MyClass*p,my;会调用两次类MyClass的构造函数

    C.对语句*p.SetVariable(5)的调用是正确的

    D.语句p->SetVadable(5)与语句my.SetVariable(5)等价


    正确答案:D

  • 第7题:

    设p1和p2均为指向int型的指针变量,k为int型变量,下列不正确的赋值语句是(C)。

    A.k=*p1+*p2

    B.k=*p1*(*p2)

    C.p2=k

    D.p1=p2


    正确答案:C

  • 第8题:

    设有C语句int a[3][4];, 则每次移动过a数组一行元素的指针变量定义形式是()

    • A、int *p;
    • B、int **p;
    • C、int(*p)[4];
    • D、int *p[4];

    正确答案:C

  • 第9题:

    有以下变量说明,下面不正确的赋值语句是() int a=5, b=10,c; int ?p1=&a,?p2=&b;

    • A、?p2=b;
    • B、p1=a;
    • C、p2=p1;
    • D、c=?p1?(?p2)。

    正确答案:B

  • 第10题:

    下面关于指针变量赋值形式正确的是()

    • A、inta;int*p=&a;
    • B、inta;int*p;p=&a;
    • C、intaintp*=&a;
    • D、inta;intp*;p=&a;

    正确答案:A,B

  • 第11题:

    下面关于指针变量int*p;描述不正确的是()

    • A、*p表示的是指针变量p的地址
    • B、int*p表示定义了一个指针类型变量
    • C、*p表示的是指针变量p的值
    • D、p=&a将a的值赋值给变量p

    正确答案:A,C,D

  • 第12题:

    单选题
    有以下变量说明,下面不正确的赋值语句是() int a=5, b=10,c; int ?p1=&a,?p2=&b;
    A

    ?p2=b;

    B

    p1=a;

    C

    p2=p1;

    D

    c=?p1?(?p2)。


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

  • 第13题:

    类MyClas定义如下: Class MyClas{ public: MyClas(){value=0;} setVariable(int i){value=I;} private: int value; }则以下对语句序列 MyClas *p,my;p=&my; 的描述正确的是( )。

    A.语句 p->setVariable(5) 与语句 my.setVariable(5) 等价

    B.对语句 *p.setVariable(5)的调用是正确的

    C.语句 MyClas *p,my; 会调用两次类MyClas的构造函数

    D.语句 p=&my; 是把对象my赋值给指针变量p


    正确答案:A
    解析:选项A中,p是对象指针,所以调用p的成员要用符号“->”,而my是一般的类对象,所以调用my的成员用“.”;选项B中正确的调用方式应该是(*p).setVariable;选项C中仅调用一次类对象的构造函数;选项D是把对象my的地址赋值给指针变量p,而不是对象本身。

  • 第14题:

    若已有定义int x;下列说明指针变量p指向x的正确语句是( )

    A. int p=&x;

    B. int *p=&x;

    C. int p=x;

    D. int *p=x;


    正确答案:B

  • 第15题:

    有如下定义语句:int a[]={1,2,3,4,5);,则对语句int *p=a;正确的描述是( )。

    A.语句int *p=a;定义不正确

    B.语句int *p=a;初始化变量p,使其指向数组对象a的第一个元素

    C.语句int *p=a;是把a[0]的值赋给变量p

    D.语句int *p=a;是把a[1]的值赋给变量p


    正确答案:B

  • 第16题:

    类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i;) private: int value; }; 则对下列语句序列正确的描述是( )。

    A.MyClass*p,my;p=&my;

    B.语句p=&my;是把对象my赋值给指针变量p

    C.语句MyClass*p,my;会调用两次类MyClass的构造函数

    D.对语句*p.SetV ariable(5)与语句my.SetVariable(5)等价


    正确答案:D

  • 第17题:

    若有定义“floata=25,b,*p=&b;”,则下列对赋值语句“*p=a;”和“p=&a;”的正确解释为( )。

    A.两个语句都是将变量a的值赋予变量p

    B.*p=a是使P指向变量a,而P=&a是将变量的值赋予变量指针p

    C.*p=a是将变量a的值赋予变量b,而&;a是使P指向变量a

    D.两个语句都是使p指向变量a


    正确答案:C
    “p”是指针变量,指向一个地址:“*p”为p指针所指向地址的内容。“&”是取变量地址。

  • 第18题:

    假定p是具有int**类型的指针变量,则给p赋值的正确语句为( )。

    A.p=newint

    B.p=newint*

    C.p=newint**

    D.p=newint[10]


    正确答案:B

  • 第19题:

    设有C语句:struct T{int n;double x;}d,*p;,若要使p指向结构体变量中的成员n,正确的赋值语句是()

    • A、p=&d.n
    • B、*p=d.n
    • C、p=(struct T *)&d.n
    • D、p=(struct T *)d.n

    正确答案:C

  • 第20题:

    假定p是具有int**类型的指针变量,则给P赋值的正确语句为()。

    • A、p=newint
    • B、p=aewint*
    • C、p=newint**
    • D、p=newint[10]

    正确答案:B

  • 第21题:

    下面指针变量赋值错误的是()

    • A、int*p;p=1002
    • B、int*p,a;p=&a;
    • C、inta;int*p=&a;
    • D、int*p=1000;

    正确答案:A

  • 第22题:

    若已定义inta=5;下面对(1)int*p=&a;(2)*p=a;两个语句的正确解释是()

    • A、语句(1)和(2)中的*P含义相同,都表示给指针变量p赋值
    • B、语句(1)和语句(2)的执行结果,都是把变量a的地址值赋给指针变量p
    • C、语句(1)在对p进行说明的同时进行初始化,使p指向a,语句(2)将变量a的值赋给指针变量p
    • D、语句(1)在对p进行说明的同时进行初始化,使p指向a,语句(2)将变量a的值赋于*p

    正确答案:D

  • 第23题:

    单选题
    若已定义:int x=12;对①int *p=&x;和②*p=x;这两条语句的正确理解是()
    A

    语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p所指向的变量

    B

    语句①和②中的*p含义相同,都表示给指针变量赋值

    C

    语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p

    D

    语句①和②的执行结果都是把变量x的地址赋给指针变量p


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

  • 第24题:

    单选题
    假定p是具有int**类型的指针变量,则给P赋值的正确语句为()。
    A

    p=newint

    B

    p=aewint*

    C

    p=newint**

    D

    p=newint[10]


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