若有以下定义      int a〔 〕={1,2,3,4,5,6,7,8,9,10),*p=a;    则值为3的表达式是()   A、p+=2,*(p++)B、p+=2,*++pC、p+=3,*p++D、p+=2,++*P

题目

若有以下定义      int a〔 〕={1,2,3,4,5,6,7,8,9,10),*p=a;    则值为3的表达式是()   

  • A、p+=2,*(p++)
  • B、p+=2,*++p
  • C、p+=3,*p++
  • D、p+=2,++*P

相似考题
更多“若有以下定义      int a〔 〕={1,2,3,4,5,6,7,8,9,10),*p=a;    则值为3的表达式是()   A、p+=2,*(p++)B、p+=2,*++pC、p+=3,*p++D、p+=2,++*P”相关问题
  • 第1题:

    若有定义: int*p; 则下列各选项中,不同于表达式“*p=*p+1;”的是( )。

    A.*p++;

    B.++*p;

    C.*p+=1;

    D.++(*p);


    正确答案:A
    解析:题目中的语句“*p=*p+1;”是将指针变量p所指向的存储单元的值加1,然后再放入p所指向的存储单元中。选项A中,语句“*p++;”,当把该表达式赋给一整型变量k时,就会发现,原语句可变为“k=*p;p=p+1;”,即语句“*p++”最后所执行的是p的值(即p中存放的地址)加1,与题中语句“*p=*p+1;”的意思不同。再来看选项B,C,D,选项B中的语句可表示为“*p=*p+1;”。选项C中的语句可表示为“*p=*p+1;”。选项D中的语句也可表示为“*p=*p+1;”。

  • 第2题:

    若有以下定义: int a[ ]={1,2,3,4,5,6,7,8,9,10},* p=a; 则值为3的表达式是 ( )

    A.p+=2,* (pd+ +)

    B.p+=2,* + +p

    C.p+=3,* p+ +

    D.p +=2,+ + * p


    正确答案:A

  • 第3题:

    有以下程序

    main()

    { int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p+2;

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

    程序运行后的输出结果是


    正确答案:8
    8 解析:*p=&a[3],即*p=4,*q=p+ 2;即*q=6,所以*p+*q=10。

  • 第4题:

    若有定义语句:int year=2009,*p=&year;,以下不能使变量year中的值增至2010的语句是

    A.*p+=1;

    B.(*p)++;

    C.++(*p);

    D.*p++;


    正确答案:D
    解析:++的优先级比木的高,所以先运算p++,使得p指向了year变量的下一个存储单元中的内容,然后在取其中的值,得到的一个没有意义的数字,*p++自然就不对了。

  • 第5题:

    若有int a[10],*p=a;,则( )。

    A、p++可以使p指向下一个字节

    B、p+=2 相当于p=sizeof(a)/10

    C、p++可以使p指向下一个元素,即a[1]的首地址

    D、p+=2可以使p指向下一个元素,即a[1]的首地址


    参考答案C

  • 第6题:

    若有以下的定义, int a[ ]={1,2,3,4,5,6,7,8,9,10},*p=a;则值为3的表达式是 ______。

    A.p+=2,*(p++)

    B.p+=2,*++p

    C.p+=3,*p++

    D.p+=2,++*p


    正确答案:A

  • 第7题:

    有如下说明int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是( )

    A.*p+9
    B.*(p+8)
    C.*p+=9
    D.p+8

    答案:B
    解析:

  • 第8题:

    若有说明“int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=a;”,则数值为9的表达式是()。

    • A、*p+9
    • B、*(p+8)
    • C、*p+=9
    • D、p+8

    正确答案:B

  • 第9题:

    若有定义:int a[10],*p=a;则表示数组元素a[3]的错误选项是()。

    • A、*(a+=3)
    • B、*(p+=3)
    • C、*(a+3)
    • D、p[3]

    正确答案:A

  • 第10题:

    单选题
    有如下说明语句inta[10]={1,2,3,4,5,6,7,8,9,10};int*p=a;则数值为9的表达式是()
    A

    *p+9

    B

    *(p+8)

    C

    *p+=9

    D

    p+7


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

  • 第11题:

    单选题
    若有以下的定义:int a[]= {1,2,3,4}.*p=a;则值为3的表式是()
    A

    p+=2,*(p++)

    B

    p+=2.*++p

    C

    p+=3,*kp++

    D

    *p+=2


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

  • 第12题:

    单选题
    若有说明“int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=a;”,则数值为9的表达式是()。
    A

    *p+9

    B

    *(p+8)

    C

    *p+=9

    D

    p+8


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

  • 第13题:

    若有以下定义和语句: int a[]={1,2,3,4,5,6,7,8,9,10},*p=a; 则值为3的表达式是______。

    A.p+=2,*(p++)

    B.p+=2,*++p

    C.p+=3,*p++

    D.p+=2,++*p


    正确答案:A
    解析:引用一个数组元素,可以用:(1)下标法,如a[i]形式:(2)指针法,如*(a+i)或*(p+i)。数组的下标从0开始,值为3的数组元素是a[2]。B、C的内容为a[3],D将a[2]前自加,结果为4。

  • 第14题:

    有如下说明: int a[10]={1,2,3,4,5,6,7,8,9,10},* P=a; 则数值为9的表达式是( )。 A.*P+9SXB

    有如下说明: int a[10]={1,2,3,4,5,6,7,8,9,10},* P=a; 则数值为9的表达式是( )。

    A.*P+9

    B.木(P+8)

    C.*P+=9

    D.P+8


    正确答案:B
    本题考查指向数组的指针,本题中指针变量P指向数组a,那么*P的值就是1,即表示数组的第一个元素,那么数值为9的表达式就是将指针向后移动8个地址,即P+8指向的是数组元素值为9,所以数值为9的表达式是*(P+8)。

  • 第15题:

    变量定义如下;int *p; 则下列不同于*p=*p+1; 的是( )。

    A.*p++;

    B.++ *p;

    C.*p+=1;

    D.++( *p);


    正确答案:A
    解析:*p=*p+1;是将指针变量p所指向的存储单元的值加1,然后放入p所指向的存储单元中。而选项A中最后是将p的值加1,即移动一个单位的存储单元。

  • 第16题:

    下列程序的输出结果为______。 main ( ) { int p, y=0, x=0; p=x<<8 | ~y>>8; printf("%d",p); p+

    下列程序的输出结果为______。 main ( ) { int p, y=0, x=0; p=x<<8 | ~y>>8; printf("%d ",p); p+=(p+=2); printf("%d\n",p); }

    A.-1 0

    B.0 0

    C.0 4

    D.-1 2


    正确答案:D

  • 第17题:

    有以下程序: main() {int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p+2; printf("%d\n",*p+*q); }

    A.16

    B.10

    C.8

    D.6


    正确答案:B
    解析:本题定义了一维数组a和两个指针变量。指针变量p的初值为第4个数组元素的地址,指针变量q的初值为,第6个数组元素的地址。*p+*q=4+6=10。

  • 第18题:

    试题25

    若有定义语句:int year=2009,*p=&year; , 以下不能使变量year 中的值增至2010的语句是()

    A.*p+=1;

    B.(*p)++;

    C.++(*p);

    D.*p++;


    正确答案:D
    试题25分析
    A,B,C都是使p所指单元的值增1,而D是使指针往后移一位。
    试题25答案
    D

  • 第19题:

    若有以下说明:int [10]={1,2,3.4,5,6,7,8,9,10},*p= a;则数值为6的表达式是()

    • A、p+6
    • B、*(p+6)
    • C、p+=5
    • D、p+5

    正确答案:C

  • 第20题:

    若有以下的定义:int a[]= {1,2,3,4}.*p=a;则值为3的表式是()

    • A、p+=2,*(p++)
    • B、p+=2.*++p
    • C、p+=3,*kp++
    • D、*p+=2

    正确答案:A

  • 第21题:

    有如下说明语句inta[10]={1,2,3,4,5,6,7,8,9,10};int*p=a;则数值为9的表达式是()

    • A、*p+9
    • B、*(p+8)
    • C、*p+=9
    • D、p+7

    正确答案:B

  • 第22题:

    单选题
    有如下说明int a[10]=1,2,3,4,5,6,7,8,9,10,*p=a;则数值为9的表达式是(  )。
    A

    *p+9

    B

    *(p+8)

    C

    *p+=9

    D

    p+8


    正确答案: B
    解析:
    A项,*p = a[0] = 1;表达式*p + 9 = 1 + 9 = 10;B项,*(p+8) = a[8] = 9;C项,*p = *p + 9 = a[0] + 9 = 1+9 =10;D项,p+8表示a[8]的地址值,该值无法确定。

  • 第23题:

    单选题
    若有定义:int a[10],*p=a;则表示数组元素a[3]的错误选项是()。
    A

    *(a+=3)

    B

    *(p+=3)

    C

    *(a+3)

    D

    p[3]


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