首页/ 题库 / [单选题]设有以下定义: struck sk { 的答案

设有以下定义: struck sk { int a; float b; }data; int *p; 若要使p指向data中的a域,正确的赋值语句是( )。

单选题
2022-01-08 14:39
A、p=&a;
B、p=data.a;
C、p=&data.a;
D、*p=data.a;
查看答案

正确答案
C

试题解析
解析:p定义为指针变量。选项A中对结构体分量a的引用错误,应为data.a。选项B中data.a是取分量的值,它是一个整型数据,而p的值应为地址,所以不能将data.a赋值给p。&为取地址符,取分量data.a的地址赋值给p,是正确的赋值语句。*是间接访问运算符,选项D中的浯句是将分量data.a的值赋值给p所指存储单元,*p相当于一个变量,而不能实现使p指向data中的a域。

标签:
相关题目
若有以下定义 int a,b; float x ,则正确的赋值语句是 b++ ( )
若有定义:int a=4,b=5;float x=3.4,y=2.1;则表达式(float)(a+b)/2+(int)x%(int)y的值为(  )。
设有如下定义:struct sk{ int a; float b;} data;int p;若要使p指向data中的a域,正确的赋值语句是()。
已知下列函数定义: fun(int%,int c,int n,int datA){int k; for(k=0;k<m*n;k++) {*b=data; b++;} } 则调用此函数的正确写法是(假设变量a的说明为int a[50])( )。
假设有如下定义:struct a{int n;float k}data,*p;若要使p指向data中的成员n,正确的赋值语句是
设有如下变量定义: double a=3.500000;float b=2.5; int m=2,n=3; 则表达式“(float)(m+n)/2+(int)a%(int)b”的值是( )
设有如下变量定义: double a= 3.500000;float b=2.5;int m=2,n=3; 则表达式“(float)(m+n)/2+(int)a%(int)b”的值是( )。
若有定义:int a=2,b=3;float x=3.5,y=2.5;则下面表达式的值为______。(float)(a+b)/2+(int)x%(int)y
若有定义:“int a=4,b=5;float x=3.4,y=2.1;”,则下列表达式的值为( )。 (float)(a+b)/2+(int)x%(int)y;
若有定义:int a=4,b=5;float x=3.4,y=2.1;,则下列表达式的值为( )。(float)(a+b) /2+(int)x%(int)y
若有定义:int a=4,b=5;float x=3.4,y=2.1;,则下列表达式的值为( )(float) (a+b)/2+(int)×%(int)y
若有定义:int a=4, b=5;float x=3.4,y=2.1;,则下列表达式的值为( )。 (float) (a+b)/2+(int)x%(int)y
设有如下定义: struct sk { int a; float b; }data; int *p; 若要使p指向data中的a域,正确的赋值语句是 ( )
设有如下定义: struct sk { int a;float b; } data; int *p; 若要使p指向data中的a域,正确的赋值语句是( )。
设有如下定义, struct sk { int a; float b; }data; int*p; 若要使P指向data中的a域,正确的赋值语句是( )。
设有下列定义:struct sk{ int m;float x;}data,*q;若要使q指向data中的m域,正确的赋值语句是( )。
设有如下定义:struct sk{ int n;float x; } data, *p;若要使p指向data中的n域,正确的赋值语句是
设有以下定义: struck sk { int a; float b; }data; int *p; 若要使p指向data中的a域,正确的赋值语句是( )。
设有如下定义: struck sk { int a; float b; }data; int *p; 若要使p指向data中的a域,正确的赋值语句是( )。
没有如下定义: Struct sk { int a; float b; }data; int *p; 若要使P指向data中的a域,正确的赋值语句是
广告位招租WX:84302438

免费的网站请分享给朋友吧