若有定义“float *p ;”则下面的叙述中正确的是()。
A.此定义不正确,不存在float这种类型
B.此定义正确,p是指向实型指针变量,而不是指向单个实型变量
C.此定义正确,定义了一个指向单个实型变量的指针
D.此定义不正确,C语言中不允许类似的定义
第1题:
若有定义float a[15],*p=a;,且数组a的首地址为300H,则p+13所指向的数组元素的地址为( )。
A.334H
B.30DH
C.352H
D.31AH
第2题:
已知有结构体: struct sk { int a; float b; }data,*p; 若有p=&data,则对data的成员a的正确引用是( )。
A.(*p).data.a
B.(*p).a;
C.p->data.a
D.p.data.a
第3题:
若定义了以下函数: void f(……) { …… *p=(double *)malloc(10 * sizeof(double)); …… } p是该函数的形参,要求通过p把动态分配存储单元的地址传回主调函数,则形参p的正确定义应当是( )
A.double *p
B.float **p
C.double **p
D.float *p
第4题:
若有以下定义: char a;int b; float c;double d; 则表达式a*b+b-c值的类型为( )。
A. float
B.int
C.char
D.double
第5题:
若有定义语句:“int a=10;double b=3.14;”,则表达式A+a+b值的类型是( )。
A.char
B.int
C.double
D.float
第6题:
l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。
A.float*p=&x;
B.int*p-(float)x;
C.float p=&x;
D.float*p=1024;
第7题:
若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是( )。
第8题:
若有定义语句:
double a,+P=&;a;
以下叙述中错误的是( )。
A.定义语句中的*号是一个问址运算符
B.定义语句中的*号是一个说明符
C.定义语句中的P只能存放double类型变量的地址
D.定义语句中。P=&a把变量a的地址作为初值赋给指针变量P
第9题:
若有以下定义:
char a;int b;
float c;double d;
则表达式a*b+d-c值的类型为( )。
A.A. float
B.int
C.char
D.double
第10题:
设有如下定义: struct sk { int a;float b;}data,* p; 若有p=& data;,则对data中的a域的正确引用是 ( )
A.(* p).data
B.(* p).a
C.p->data
D.p.data. a
第11题:
若有下面的说明和定义: struct test { char m2; float m3; union uu{ char u1[5]; float u2; }ua; }MyStruct; 则sizeof(MyStruct)的值是( )。
A.10
B.11
C.12
D.9
第12题:
float *p=&x;
int*p=(float)x;
float p=&x;
float *p=1024;
第13题:
已知有如下结构体:
struct sk
{ int a;
float b;
}data,*p;
若有P=&data,则对data的成员a引用正确的是( )。
A.(*p).data.a
B.(*p).a;
C.p->data.a
D.p.data.a
本题主要考查结构指针:P=&data,访问结构体的成员。它可以通过结构变量访问,即data,可以用等价的指针形式:(*p).a和P->a来访问结构体变量中的成员。
第14题:
已知有如下结构体:
struct sk
{ int a; float b; }data,*p;
若有P=&data,则对data的成员a引用正确的是( )。
A.(*p).data.a
B.(*p).a;
C.p->data.a
D.p.data.a
第15题:
A.int*p=(floatx)
B.floatp=&x
C.float*p=1024
D.float*P=&x
第16题:
若有定义float X=1.5;int a=1,b=3,C=2;,则正确的switch语句是( )。
A.
B.
C.
D.
第17题:
若有定义:float x=1.5;int a=1,b=3,c--2;,则正确的switch语句是( )。 .
A.A
B.B
C.C
D.D
第18题:
设有定义:struct sk {int a;float b;} data,* p; 若有p=& data;,则对data中的a域的正确引用是 ( )
A.(* p).data.a
B.(* p).a
C.p->data.a
D.p.data.a
第19题:
设已有定义:float x;,则以下对指针变量P进行定义且赋初值的语句中正确的是( )。
A.int*p=(float)x;
B.float*p=&x;
C.float p=&x;
D.float=1024;
第20题:
若有以下说明和定义
typedef int*INTEGER:
INTEGER P,*q;
以下叙述正确的是
第21题:
若有如下定义: union aa {int n; char c[9]; float x;}a,b,c; 则下列叙述中不正确的是( )
A.union aa是定义的共用体类型
B.a,b,c是定义的共用体类型名
C.n、c[9]和x是共用体的成员名
D.a,b,c是定义的共用体变量名
第22题:
若有下列定义,则对a数组元素地址的正确引用是( )。
int a[5],*p=a;
A.p+5
B.*a+1
C.&a+1
D.&a[0]
第23题:
试题14
若有定义语句:int a=10; double b=3.14; , 则表达式‘A’+a +b值的类型是()
A.char
B.int
C.double
D.float
第24题: