若有以下定义和语句; double r=99,*p=7; *p=r; 则以下正确的叙述是( )A.两处的*p含义相同,都说明给指针变量P赋值3B.在“double r=99,*p=7;*p=r;”中,把r的地址赋给了p所指的存储单元C.语句“*p=r;”把变量r的值赋给指针变量pD.语句“*p=r;”把变量r的值放回P中

题目

若有以下定义和语句; double r=99,*p=7; *p=r; 则以下正确的叙述是( )

A.两处的*p含义相同,都说明给指针变量P赋值3

B.在“double r=99,*p=7;*p=r;”中,把r的地址赋给了p所指的存储单元

C.语句“*p=r;”把变量r的值赋给指针变量p

D.语句“*p=r;”把变量r的值放回P中


相似考题
参考答案和解析
正确答案:D
更多“若有以下定义和语句;double r=99,*p=7;*p=r;则以下正确的叙述是()A.两处的*p含义相同,都说明给指 ”相关问题
  • 第1题:

    若有定义语句:double a,*p=&a;,以下叙述中错误的是( )。 A.定义语句中的*号是一个间址运算符S

    若有定义语句:double a,*p=&a;,以下叙述中错误的是( )。

    A.定义语句中的*号是一个间址运算符

    B.定义语句中的*号只是一个说明符

    C.定义语句中的P只能存放double类型变量的地址

    D.定义语句中,*p=&n把变量a的地址作为初值赋给指针变量P


    正确答案:C
    doublea,*p=&a语句的意思是将a的值存放到指针变量P中,P是指针可以随意指向任何地址,所以答案C错误。

  • 第2题:

    若有说明语句:double*p,a;则通过scanf语句正确给输入项读人数据的程序段是( )。

    A.*p=&a;scanf("%1f”,p);

    B.*p=&a;scanf("%f",p);

    C.p=&a;scanf("%",*p);

    D.p=&a;scanf("%1f",p);


    正确答案:D
    double*p,a定义了一个指向双精度型的指针变量P和双精度型变量a,p=&a表示将变量a的地址赋给指针变量p;scanf("%If",p)表示用键盘输入的数赋给指针变量P所指向的地址单元中,scanf函数要求在输入double型数据,格式控制符必须用%1f。否则,数据不能正确输入。所以选项D正确。

  • 第3题:

    若有定义语句:double a,*p=&a;,以下叙述中错误的是( )。A.定义语句中的*号是一个间址运算符SXB

    若有定义语句:double a,*p=&a;,以下叙述中错误的是( )。

    A.定义语句中的*号是一个间址运算符

    B.定义语句中的*号是一个说明符

    C.定义语句中的p只能存放double类型变量的地址

    D.定义语句中,*p=&a把变量a的地址作为初值赋给指针变量P


    正确答案:A
    在变量定义doublea,*p:&a;中,*号是一个指针运算符,而非间址运算符,因此A)错误。

  • 第4题:

    若有说明语句:double*P,a;则通过scanf语句正确给输入项读人数据的程序段是( )。A.B.C.D.A.ASX

    若有说明语句:double*P,a;则通过scanf语句正确给输入项读人数据的程序段是( )。A.

    B.

    C.

    D.

    A.A

    B.B

    C.C

    D.D


    正确答案:D
    double*P,a定义了一个指向双精度型的指针变量P和双精度型变量a,p=&a表示将变量a的地址赋给指针变量P;scanf(”%If”,p)表示用键盘输入的数赋给指针变量P所指向的地址单元中,scanf()函数要求在输入double型数据时,格式控制符必须用%lf。否则,数据不能正确输入。所以选项D正确。

  • 第5题:

    若有定义语句:double a,*P=&a;以下叙述中错误的是( )。

    A.定义语句中的*号是-个间址运算符

    B.定义语句中的木号是-个说明符

    C.定义语句中的P只能存放double类型变量的地址

    D.定义语句中,P=&a把变量a的地址作为初值赋给指针变量P


    正确答案:A
    在变量定义doublea,*P:&a;中,}号是一个指针运算符,而非间址运算符,所以A错误。

  • 第6题:

    若有以下说明和定义

    typedef int*INTEGER:

    INTEGER P,*q;

    以下叙述正确的是


    正确答案:B

  • 第7题:

    若有定义语句:double a,*p=&a;以下叙述中错误的是

    A.定义语句中的*号是一个间址运算符

    B.定义语句中的*号只是一个说明符

    C.定义语句中的p只能存放double类型变量的地址

    D.定义语句中,*p=&a把变量a的地址作为初值赋给指针变量p


    正确答案:A
    解析:本题中的*p=&a中,*不是间址运算符,只是一个指针说明符。间址运算符用于表示某变量是指针型数据,用于存放某个地址,例如int*p,k;p=&k;*p=2;这里的*就是间址运算符。

  • 第8题:

    试题23

    若有定义语句:double a, *p=&a; 以下叙述中错误的是()

    A.定义语句中的*号是一个间址运算符

    B.定义语句中的*号只是一个说明符

    C.定义语句中的p只能存放double类型的变量

    D.定义语句中,*p=&a把变量a的地址作为初值赋给指针变量p


    正确答案:A
    试题23分析
    *号只是一个说明符,而非间址运算符。说明只能存放double类型的变量。
    试题23答案
    A

  • 第9题:

    若有说明语句:double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是()

    • A、*p=&a;scanf(“%lf”,p)
    • B、*p=&a;scanf(“%lf”,*p)
    • C、p=&a,scanf(“%lf”,*p)
    • D、p=&a;scanf(“%lf”,p)

    正确答案:D

  • 第10题:

    若已定义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

  • 第11题:

    单选题
    若有说明语句:double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是()
    A

    *p=&a;scanf(“%lf”,p)

    B

    *p=&a;scanf(“%lf”,*p)

    C

    p=&a,scanf(“%lf”,*p)

    D

    p=&a;scanf(“%lf”,p)


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

  • 第12题:

    单选题
    若有定义语句:double a,*p=&a;以下叙述中错误的是(  )。
    A

    定义语句中的p只能存放double类型变量的地址

    B

    定义语句中的*号是一个说明符

    C

    定义语句中的*号是一个间址运算符

    D

    定义语句中*p=&a把变量a的地址作为初值赋给指针变量p


    正确答案: D
    解析:
    C项错误,只有取指针变量的值时,星号*才是间址运算符,引用指针指向的存储单元。A项正确,p是double类型的指针,只能存放double类型的地址;B项正确,定义指针变量时,星号*是一个说明符,用来说明该变量是指针变量;D项正确,“&”是求地址运算符,*p=&a用来求出double变量a的地址赋给指针变量p,而使p指向a。答案选择C选项。

  • 第13题:

    若有以下定义和语句:“double r=99,*p=&r;*P =r;”,则以下正确的叙述是( )。

    A.两个*p含义相同,都说明给指针变量p赋值

    B.在“double r=99,*p=&r;”中,把r的地址赋值给了P所指的存储单元

    C.语句“*p=r;”把变量r的值赋给指针变量P

    D.语句“*p=r;”取变量r的值放回r中


    正确答案:B
    在定义*p=&r时,是表示r的地址赋给了p所指的存储单元,因此选项B正确。

  • 第14题:

    若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是( )。A.p=a; B.p[0]=a;

    若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是( )。

    A.p=a;

    B.p[0]=a;

    C.p[o]=&a[1][2];

    D.p[1]=&a;


    正确答案:B
    选项B表示把整型数组a[o]的指针赋给p[0]。

  • 第15题:

    若有说明语句:double*p,a,则能通过scanf语句正确给输入项读入数据的程序段是( )。

    A.*p=&a;scanf("%1f",p);

    B.*p=&a; scanf("%f",p);

    C.p=&a; scanf("%1f",*p);

    D.p=&a; scanf("%1f",p);


    正确答案:D
    解析:double*p,a;语句表示定义了一个指向双精度型的指针变量p和双精度型变量a,而语句p=&a表示将变量a的地址赋给指针变量p;scanf("%1f",p)表示用键盘输入的数赋给指针变量p所指向的地址单元中。scanf()函数要求在输入double型数据,格式控制符必须用%1f(或%le).否则,数据不能正确输入。所以选项D)为正确答案。

  • 第16题:

    若已定义: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


    参考答案:A

  • 第17题:

    若有定义语句:double a,+P=&a;以下叙述中错误的是( )。A.定义语句中的*号是一个问址运算符

    若有定义语句:

    double a,+P=&;a;

    以下叙述中错误的是( )。

    A.定义语句中的*号是一个问址运算符

    B.定义语句中的*号是一个说明符

    C.定义语句中的P只能存放double类型变量的地址

    D.定义语句中。P=&a把变量a的地址作为初值赋给指针变量P


    正确答案:A
    指针运算符(通常称为间接引用运算符:indirectionopemlor或复引用运算符:derefereneingoperator)返回其操作数(即一个指针)所指向的对象的值。定义语句中的+号不是一个问址运算符,而是定义指针变量的说明符,因此,A项错误,B选项正确,原则上说变量P可以放double兼容性的变量地址,C选项正确,根据指针的赋值运算,可知D选项正确。故答案为A选项。’

  • 第18题:

    若有以下定义和语句: double r=23,*p=&r; *p=r;则以下正确的叙述是______。

    A.两处的*p含义相同,都说明给指针变量p赋值

    B.在“double r=23,*p=&r;”中,把r的地址赋值给了p所指的存储单元

    C.语句“*p=r;”把变量r的值赋给指针变量p

    D.语句“*p=r;”取变量r的值放回r中


    正确答案:D
    解析:*p=&r使p指向变量r的地址,*p=r是再取变量r的值,并放回r中。

  • 第19题:

    若有说明语句:double*p,a;则通过scanf语句正确给输入项读入数据的程序段是( )。A.*p=&a;scanf(&qu

    若有说明语句:double*p,a;则通过scanf语句正确给输入项读入数据的程序段是( )。

    A.*p=&a;scanf("%1f”,p);

    B.*p=&a;scanf("%f",p);

    C.p=&a;scanf("%",*p);

    D.p=&a;scanf("%1f",p);


    正确答案:D
    double*p,a定义了一个指向双精度型的指针变量P和双精度型变量a,p=&a表示将变量a的地址赋给指针变量p;scanf("%If",p)表示用键盘输入的数赋给指针变量P所指向的地址单元中,scanf函数要求在输入double型数据,格式控制符必须用%1f。否则,数据不能正确输入。所以选项D正确。

  • 第20题:

    若有说明语句:      Double *p,a;  则能通过scanf语句正确给输入项读人数据的程序段是()    

    • A、*p=&a;scanf(”%if”,p);
    • B、*p=&a;scanf(”%f”,p);
    • C、p=&a;scanf(”%if”,*p);
    • D、p=&a;scanf(”%if”,p);

    正确答案:D

  • 第21题:

    若有以下的定义、说明和语句,则值为101的表达式是()

    • A、*p->b
    • B、p->a
    • C、++(p->a)
    • D、(p++)->a

    正确答案:C

  • 第22题:

    单选题
    若有说明语句:      Double *p,a;  则能通过scanf语句正确给输入项读人数据的程序段是()
    A

    *p=&a;scanf(”%if”,p);

    B

    *p=&a;scanf(”%f”,p);

    C

    p=&a;scanf(”%if”,*p);

    D

    p=&a;scanf(”%if”,p);


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

  • 第23题:

    单选题
    若有以下的定义、说明和语句,则值为101的表达式是()
    A

    *p->b

    B

    p->a

    C

    ++(p->a)

    D

    (p++)->a


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