更多“若有语句:int x,*p=&x;则与该语句等价的语句是()”相关问题
  • 第1题:

    若有定义:int x=0,*p=&x;,则语句printf("%d\n",*p);的输出结果是 ______。

    A.随机值

    B.0

    C.x的地址

    D.p的地址


    正确答案:B
    解析:由定义*p=&x,p指向x的地址,*p=x,因此输出的是x的值。

  • 第2题:

    若有定义:“int*P,x=0,*p,p=&x;”,则语句“printf("%d\n",*p);”的输出结果是( )。

    A.随机值

    B.0

    C.x的地址

    D.P的地址


    正确答案:A
    *P的意思是取其指向地址的内容,P是指向x地址的指针,因此输出*p也就是输出x的内容,即0,故选择B选项。

  • 第3题:

    若有定义语句:int X=10;,则表达式-x =x+X的值为

    A.-20

    B.-10

    C.0

    D.10


    正确答案:B
    解析:x-=x+x可化为:x=x-(x+x),由于x初始值为10,所以计算后,x=10-20=-10,因此选B)。

  • 第4题:

    若有定义:int x;则语句x=(2*3)+6%5;运行后,x的值是()

    A.8

    B.7

    C.6

    D.5


    参考答案:B

  • 第5题:

    若有定义语句:“int x=10;”,则表达式x-=x+x的值为( )。 A.-20B.-l0C.0

    若有定义语句:“int x=10;”,则表达式x-=x+x的值为( )。

    A.-20

    B.-l0

    C.0

    D.10


    正确答案:B
    表达式x-=x+X可以写成x=x-(x+x),所以X的值为-l0。

  • 第6题:

    若有定义

    则a的定义与下面哪个语句等价

    A.int(*A.[10];

    B.int}g[10];

    C.int*a;

    D.int a[10];


    正确答案:B
    本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,其中本题中int*用T来代替,所以定义Ta[10];就相当于是int*a[10];选项B正确。

  • 第7题:

    有定义语句:“int*p[4];”,以下选项中与此语句等价的是( )。 A.int p[4];B.int**P;SXB

    有定义语句:“int*p[4];”,以下选项中与此语句等价的是( )。

    A.int p[4];

    B.int**P;

    C.int*(p[4]);

    D.int(*p)[4];


    正确答案:D
    本题int*p[4]的作用是声明一个指针数组,每个元素都是int*型指针。

  • 第8题:

    设有定义:int a,*p=&a,* *pp=&p;,则与a=100;等价的语句为()A.**p=100;B.**pp=100;C.&

    设有定义:int a,*p=&a,* *pp=&p;,则与a=100;等价的语句为( )

    A.**p=100;

    B.**pp=100;

    C.&*p=100;

    D.*pp=10;


    正确答案:B

  • 第9题:

    若有语句:int x,*p=&x;则与该语句等价的语句是()

    • A、intx,*p;*p=&x;
    • B、int x,*p;p=&x;
    • C、int x,*p;*p=x;
    • D、int x,*p;p=x

    正确答案:B

  • 第10题:

    有以下说明语句:struct point{int x;int y;}p;则正确的赋值语句是()

    • A、point.x=1;point.y=2;
    • B、point={1,2};
    • C、p.x=1;p.y=2;
    • D、p={1,2};

    正确答案:C

  • 第11题:

    单选题
    若已定义: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
    解析: 暂无解析

  • 第12题:

    单选题
    有以下说明语句:struct point{int x;int y;}p;则正确的赋值语句是()
    A

    point.x=1;point.y=2;

    B

    point={1,2};

    C

    p.x=1;p.y=2;

    D

    p={1,2};


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

  • 第13题:

    设有定义:int x=o,* P;,立刻执行以下语句,正确的语句是( )。

    A.p=x;

    B.* p=x;

    C.p=NULL;

    D.* p=NULL;


    正确答案:C
    如果没有把P指向一个指定的值,*P是不能被赋值的。定义指针变量不赋初始值时默认为null。

  • 第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题:

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

  • 第16题:

    若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是( )。


    正确答案:A
    B选项中switch((int)x);语句中不应该有最后的分号。switch(exprl),中的exprl不能用浮点类型或10n9类型,也不能为一个字符串,所以c错误。ca”后面常量表达式的类型必须与switch后面表达式的类型一致,所以D错误。

  • 第17题:

    若有定义语句:int x=12,y=8,z;,在其后执行语句z=0.9+x/y;,则z的值为

    A.1.9

    B.1

    C.2

    D.2.4


    正确答案:B
    解析:x的值为12,y的值为8,那么x/y的值就是1,因为z的类型是int,所以0.9+1变成int的值就是1,所以选择B)。

  • 第18题:

    若有定义语句“doublex[5]={1.0,2.0,3.0,4.0,5.0},*p=x”,则错误引用X数组元素的是( )。 A.*pSX

    若有定义语句“doublex[5]={1.0,2.0,3.0,4.0,5.0},*p=x”,则错误引用X数组元素的是( )。

    A.*p

    B.x[5]

    C.*(p+1)

    D.*x


    正确答案:B
    B。【解析】选项B中x[5]数组下标越界,数组的下标是从0开始的。

  • 第19题:

    若有定义语句“int x,*p=&x,**ppx=&px;”,则下列表达式中错误的是( )

    A.x=*px

    B.x=**ppx

    C.px=&ppx

    D.*ppx=&x


    正确答案:C
    分析备选答案A:“*px”,就是x,所以该表达式为“x=x”,是正确的,不符合题意分析备选答案B:"**ppx",就是"*(*ppx)=*px=x",所以该表达式为"X=X",是正确的,不符合题意.分析备选答案C:px是一级指针变量,其中只能存放变量或数组元素的地址,不能存放其他一级指针变量或二级指针变量的地址,而"&ppx"是二级指针变量ppx的地址,所以该表达式是错误的,本题答案应选C.至于备选答案D:"*ppx"就是px,将变量x的地址赋予px,当然是正确的。

  • 第20题:

    试题15

    若有定义语句:int x=12,y=8, z; , 在其后执行语句z=0.9+x/y; , 则z 的值为()

    A.1.9

    B.1

    C.2

    D.2.4


    正确答案:B
    试题15分析
    x/y的结果为1,右边表达式的值为1.9,因为z为整型,所以舍去小数部分。
    试题15答案
    B

  • 第21题:

    若有语句:int x=6,*p=&x;则下面正确的表达式是()

    • A、++&x
    • B、(*p)--
    • C、&(x+5)
    • D、p=1000

    正确答案:B

  • 第22题:

    单选题
    若有语句:int x=6,*p=&x;则下面正确的表达式是()
    A

    ++&x

    B

    (*p)--

    C

    &(x+5)

    D

    p=1000


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

  • 第23题:

    单选题
    若有语句:int x,*p=&x;则与该语句等价的语句是()
    A

    intx,*p;*p=&x;

    B

    int x,*p;p=&x;

    C

    int x,*p;*p=x;

    D

    int x,*p;p=x


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

  • 第24题:

    单选题
    若有定义语句:int x=12,y=8,z;在其后执行语句:z=0.9+x/y;则z的值为(  )。
    A

    1.9

    B

    1

    C

    2

    D

    2.4


    正确答案: B
    解析:
    由于x,y,z都是整型数据,所以x除以y的值为整型数值1,之后1和0.9相加得到1.9,再转换为整型数1赋给整型变量z。答案选择B选项。