更多“若有定义int*p1,*p2;则指针变量p1、p2不能进行运算的是()A、B、=C、+D、-”相关问题
  • 第1题:

    设有语句:“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,从而使这两个指针变量指向同一地址。

  • 第2题:

    设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是

    A.k=*p1+*p2

    B.p2=k;

    C.p1=p2;

    D.k=*p1*(*p2);


    正确答案:B
    解析:本题主要考查了一维数组指针的赋值和用指针引用数组元素进行运算。选项B)中p2为指向int型变量的指针,而k为int型变量,不能将int型变量直接赋值给指向int型变量的指针,所以选项B)错误。

  • 第3题:

    分析下列程序:includemain(){int *p1,*p2,*p; int a=6,b=9; p1=&a;p2=&b; if(

    分析下列程序: #include<stdio.h> main() { int *p1,*p2,*p; int a=6,b=9; p1=&a;p2=&b; if(a<b){p=p1;p1=p2;p2=p;} printf("%d,%d",*p1,*p2); printf("%d,%d",a,b); } 程序的输出结果为( )。

    A.9,66,9

    B.6,9 9,6

    C.6,9 6,9

    D.9,69,6


    正确答案:A
    解析:通过p1=&a,p2=&b分别将a、b的地址赋给指针p1、p2,接着执行if语句,发现ab成立,则通过交换p1、p2的值,即交换a、b所在存储单元的地址,但是a、b的值并没有发生变化。

  • 第4题:

    分析下面函数 swap(int *p1,*p2) {int *p; *p=*p1;*p1=*p2;*p2=*p; } 则该程序功能为( )

    A.交换*p1和*p2的值

    B.正确,但无法改变*p1和*p2的值

    C.交换*p1和*p2的地址

    D.可能造成系统故障,因为使用了空指针


    正确答案:D

  • 第5题:

    若有如下程序: sub(int * t,int n) {int *p1, *p2; for(p1=t,p2=t;p1-t<n;p1++) if(*p1<*p2) p2=p1; return(*p2);} main() {int a[9]={9,36,19,39,26,5,6,33,15}; printf("%d\n",sub(a,9));} 则程序运行后的输出结果是( )

    A.5

    B.9

    C.15

    D.39


    正确答案:A

  • 第6题:

    若有说明:int *p1,*p2,m=5,n; 以下都是正确的赋值语句的选项是()。

    • A、p1=&m; p2=&p1;
    • B、p1=&m; p2=&n; *p1=*p2;
    • C、p1=&m; p2=p1;
    • D、p1=&m; *p2=*p1;

    正确答案:C

  • 第7题:

    已有定义inta=2,*p1=&a,*p2=&a;下面不能正确执行的赋值语句是()

    • A、a=*p1+*p2;
    • B、p1=a;
    • C、p1=p2;
    • D、a=*p1*(*p2);

    正确答案:B

  • 第8题:

    int*p1,*p2,intk,则不能正确执行的语句是()。

    • A、k=*p1+*p2
    • B、p2=k
    • C、p1=p2
    • D、k=(*p1)*(*p2);

    正确答案:B

  • 第9题:

    下列语句定义整型指针p1、p2,()是正确的。

    • A、intp1,p2;
    • B、int*p1,*p2;
    • C、int*p1,p2;
    • D、int**p1,p2;

    正确答案:B

  • 第10题:

    若p1、p2都是指向整型的指针,p1已经指向变量x,要使p2也指向x,正确的是()。

    • A、p2=p1;
    • B、p2=**p1;
    • C、p2=&p1;
    • D、p2=*p1;

    正确答案:A

  • 第11题:

    单选题
    有以下变量说明,下面不正确的赋值语句是() 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
    解析: 暂无解析

  • 第12题:

    单选题
    若有定义int*p1,*p2;则指针变量p1、p2不能进行运算的是()
    A

    <

    B

    =

    C

    +

    D

    -


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

  • 第13题:

    若有说明:int*p1,*p2,m=3,n;则p1=&m;p2=p1;是正确的赋值语。()

    此题为判断题(对,错)。


    参考答案:正确

  • 第14题:

    设p1和p2是指向一个血型一维数组的指针变量,k为int型变量,则不能正确执行的语句是

    A.k=*p1+*p2

    B.p2=k;

    C.p1=p2;

    D.k=*p1*(*p2);


    正确答案:B
    解析: 本题主要考查了一维数组指针的赋值和用指针引用数组元素进行运算。选项B)中p2为指向int型变量的指针,而k为int型变量,不能将int型变量直接赋值给指向int型变量的指针,所以选项B)错误。

  • 第15题:

    若有定义int*p1,*p2;则指针变量p1、p2不能进行运算的是()

    A.<

    B.=

    C.+

    D.-


    参考答案:C

  • 第16题:

    若有定义:int*p1,*p2;,则不能用于指针变量p1、p2之间的运算符是()。

    A.-

    B.=

    C.+

    D.==


    正确答案:C

  • 第17题:

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

    A.k=*p1+*p2

    B.k=*p1*(*p2)

    C.p2=k

    D.p1=p2


    正确答案:C

  • 第18题:

    若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x,()是正确的。

    • A、p2=p1;
    • B、p2=**p1;
    • C、p2=&p1;
    • D、p2=*p1;

    正确答案:A

  • 第19题:

    有定义:int a[10], n, *p1=a,*p2=&a[9];,则正确的赋值语句为()。

    • A、n=p2-p1;
    • B、n=p2*p1;
    • C、n=p2+p1;
    • D、n=p1/p2;

    正确答案:A

  • 第20题:

    有以下变量说明,下面不正确的赋值语句是() 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

  • 第21题:

    若有说明:int*p1,*p2,m=5,n=9;以下均是正确赋值语句的选项是()

    • A、p1=&m;p2=&p1;
    • B、p1=&m;p2=&n;*p1=*p2;
    • C、p1=&m;p2=p1
    • D、p1=&m;*p2=*p1;

    正确答案:B

  • 第22题:

    单选题
    若有说明:int *p1,*p2,m=5,n; 以下都是正确的赋值语句的选项是()。
    A

    p1=&m; p2=&p1;

    B

    p1=&m; p2=&n; *p1=*p2;

    C

    p1=&m; p2=p1;

    D

    p1=&m; *p2=*p1;


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

  • 第23题:

    单选题
    有定义:int a[10], n, *p1=a,*p2=&a[9];,则正确的赋值语句为()。
    A

    n=p2-p1;

    B

    n=p2*p1;

    C

    n=p2+p1;

    D

    n=p1/p2;


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