C语言选择题

4.有四组对指针变量进行操作的语句,以下判断正确的选项是(5)。(1)int*p,*q;q=p;inta,*p,*q;p=q=&a;(2)inta,*p,*q;q=&a;... 4.有四组对指针变量进行操作的语句,以下判断正确的选项是(5) 。
(1)int *p,*q; q=p;
int a,*p,*q;p=q=&a;
(2)int a,*p,*q; q=&a; p=*q;
int a=20, *p; *p=a;
(3)int a=b=0,* p; p=&a; b=* p;
int a=20,*p,*q=&a; *p=*q;
(4)int a=20,*p,*q=&a; p=q;
int p, *q; q=&p;
A.正确:(1);不正确:(2),(3),(4)
B.正确:(l),(4);不正确:(2),(3)
C.正确:(3);不正确:(1),(2),(4)
D.以上结论都不正确
详细解释一些 谢谢
lx都是错的 答案是d
展开
 我来答
百度网友150782765
2009-02-27 · TA获得超过124个赞
知道答主
回答量:61
采纳率:0%
帮助的人:0
展开全部
(1)int *p,*q; q=p; // 未经赋值也没有说明过的指针变量不能使用
int a,*p,*q; p=q=&a; // 这个应该是正确的

(2)int a,*p,*q; q=&a; p=*q; // p=*q;明显错误
int a=20,*p; *p=a; //*p=a错误,可以改成p=&a就对了,*p是
指针变量p所指向的变量,连地址都没有
,你用什么东西来指向那个变量。

(3)int a=b=c=0,*p; p=&a; b=*p; //int a=b=c=0错误,分开写或者写成 int a,b,c;a=b=0;
int a=20,*p,*q=&a; *p=*q; // *p=*q;错误 跟int a=20,*p; *p=a; 一样的错误,可以改成p=q

(4)int a=20,*p,*q=&a; p=q; //正确 *q=&a中“*”是类型说明符,表示其后的变量是指针类型
int p,*q; q=&p; //正确

只有(4)是正确的,选D
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
世镶柳009
2009-02-27 · TA获得超过3017个赞
知道答主
回答量:2928
采纳率:0%
帮助的人:2469万
展开全部
(1)int *p,*q; q=p;
int a,*p,*q;p=q=&a; 错误,因为这里的&不是半角字符
(2)int a,*p,*q; q=&a; p=*q;错误,p和*q的类型不一致,不能直接赋值
int a=20, *p; *p=a;
(3)int a=b=0,* p; p=&a; b=* p;错误,a和b变量定义不能这么写,b没有被定义
int a=20,*p,*q=&a; *p=*q;
(4)int a=20,*p,*q=&a; p=q;正确。
int p, *q; q=&p;

综上,只有(4)是正确的,ABC三个答案都不对。因此选D。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shaocl112102
2009-02-26 · TA获得超过342个赞
知道答主
回答量:496
采纳率:0%
帮助的人:0
展开全部
我也认为是选A
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
woufo2997
2009-02-26 · TA获得超过697个赞
知道答主
回答量:244
采纳率:0%
帮助的人:107万
展开全部
a
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式