| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 884 人关注过本帖
标题:请大家帮忙做一道C语言的选择题。我做的答案是D,标准答案却是A。
只看楼主 加入收藏
莞水边
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-10-26
收藏
 问题点数:0 回复次数:9 
请大家帮忙做一道C语言的选择题。我做的答案是D,标准答案却是A。
设有定义:int a, *pa=&a; 以下scanf语句中能正确为变量a读入数据的是():
A)scanf("%d",pa)  ;   B)scanf("%d",a)   ;
C)scanf("%d",&pa) ;   D)scanf("%d",*pa)

我的解题过程:&a是变量a的地址,*pa是指针变量pa所指向的存储单元的内容(即pa所指向的变量的值)。假设pa所指向的变量为x,则*pa=x,依照题意,x=&a,也就是变量a的地址。因此我选的是D。

[此贴子已经被作者于2005-10-26 9:56:34编辑过]


搜索更多相关主题的帖子: 标准答案 C语言 选择 
2005-10-26 09:39
AK47
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-10-23
收藏
得分:0 
一般不会这样用 多麻烦

不是程序强奸了我,就是我强奸了程序. 我很差,但每天都变的更好. uc71908907
2005-10-26 11:02
bushuang
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-10-22
收藏
得分:0 
scanf("%d",&a);是a的地址。pa也是地址所以是a
*pa是一个数值不能付值
2005-10-26 12:20
starrysky
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:华中科技大学EI -T0405
等 级:版主
威 望:11
帖 子:602
专家分:1
注 册:2005-9-12
收藏
得分:0 
scanf("%d",&a); &a是数值所在的地址。正如楼主所说的,*pa是指针变量pa所指向的存储单元的内容(即pa所指向的变量的值)。所以pa就是数值所在地址,即&a,因此scanf("%d",&a);等价于scanf("%d",pa); 选A是正确的,*p指的是数值,不是地址。

我的征途是星辰大海
2005-10-26 12:45
莞水边
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-10-26
收藏
得分:0 
今天我查了书,我知道我哪里做错了。原来:int *pa=&a;等效于 int *pa;pa=&a;  

多谢各位的指教!
2005-10-26 14:14
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
收藏
得分:0 
建议把 int* 看成是一个基本数据类型 pa看成是一个变量 那么 int* pa 就是一个 int* 类型的变量

如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2005-10-27 08:55
莞水边
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-10-26
收藏
得分:0 
多谢!!还望各位大虾继续指教。
2005-10-27 08:59
jsbjzy
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2005-10-27
收藏
得分:0 
当然是a了啊~
2005-10-27 14:53
socks
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2005-10-13
收藏
得分:0 
答案必须是A啊,因为是赋值到一个地址,&a,是a的地址,pa也是a的地址,毫无疑问

虔诚的初学者~~~
2005-10-27 18:54
高寒
Rank: 2
等 级:论坛游民
帖 子:134
专家分:20
注 册:2005-10-25
收藏
得分:0 
int *p=null;
这个是定义p是一个指向整型变量的指针变量,初始值为空。
这里*的名称是指针运算符
例如:int a=5;
          p=&a;
这里的p是地址,纪录的是a的首地址
例如:*p=6
这里的*p代表a所标识的内存单元的值由5改变为6,*p不代表地址
这里*的名称是间接运算符
而scanf的语法是:scanf(格式控制符,地址); 因此选:A

2005-10-28 11:46
快速回复:请大家帮忙做一道C语言的选择题。我做的答案是D,标准答案却是A。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017675 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved