- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章练习题参考答案及解析
10-1、填空题
1) 地址 地址
2)地址
3)变量p是指针变量
4)指针变量
5)*(p++)是先取*p的值再使p加1;*(++p)是先使p加1,再取*p。
6)p=a
7) 地址 NULL(或空值,或0,或’\0’
8)5 4
【解析】语句p=a[4];使指针变量p指向数组元素a[4],*p等价于数组元素a[4],得到a[4]的值5;*--p由于*和--同优先级,结合方向为自左而右,因此它等价于*(--p),作用是先使指针变量上移一个存储单元,指向数组元素a[3],然后再取a[3]的值4。
9)5 *(p+2) p[2] *(a+2)
【解析】语句p=a;使指针变量p指向数组首地址,p+2使指针变量p下移两个存储单元,指向数组元素a[2],然后再取得a[2]的值5;语句p=a; 使指针变量p指向数组首地址,p+2和a+2就是a[2]的地址,指向数组的指针变量也可以带下标p[2]与*(p+2)使等价的。
10-2选择题
1) C
2) D
3)B
【解析】从程序段中可知,指针变量p指向变量a,p等价于a,所以只有B是正确的。
4)C
5)D
【解析】程序段在定义指针变量str时把字符串赋给了它。通过语句str+=3;使指针变量指向序号为3的元素,所以输出结果为n。
6)C
7)B
【解析】由于指针变量p和q均指向变量a,*p和*q均等价于变量a,所以选项A和D均是合理的。选项C是将指针变量q赋给指针变量p也是可以的,只有B将变量a的值赋给指针变量q是不允许的,因为指针变量只能存放地址。
8)C
【解析】*和++为同一优先级别,结合方向为自右向左。P=a+2使指针指向序号为2的元素。选项B中的*p++相当于*(p++),因++在后,所以先取*p(等价于a[2]),再使指针变量下移一个存储单元。选项D中p=a+1使指针变量指向序号为1的元素a[1],*++p使指针变量下移一个存储单元后,再取该元素a[2]的值。所以选项A、B、D均是正确的。选项C选取了序号为1的元素的值(即a[1]),所以选项C是错误的。
9)D
10)C
10-3判断题
1)× 2)× 3)√ 4)√ 5)× 6)√ 7)×
10-4写出下面这个程序的输出结果:
1) a=6,b=10
【解析】语句p=c;q=d;使指针变量p和q分别指向变量c和d的存储单元,a=*p-*q;相当于a=c-d;,b=*p+*q;相当于b=c+d;所以输出结果是a=6,b=10。
2)100,12,70
100,12.70
【解析】变量a和*p对应同一存储单元,输出*p意味着输出变量a的值。同样*q与变量b对应同一存储单元,输出*q意味着输出变量b的值。
3)18,20
20,18
18,20
【解析】语句段n=p;p=q;q=n;的作用是将指针变量p和q的值进行交换,n为中间过渡指针变量;交换后p指向变量b,q指向变量a,但变量a,b的值没有发生过变化。
4) 2 4 6 8 10 12
2 4 6 8 10 12
【解析】第一个循环输出一维数组的值。在第2个循环中,指针变量p指向数组元素a[0]所对应的存储单元,并输出a[0]的值;执行p++后,指针变量p指向数组元素a[1]所对应的存储单元,输出a[1]的值;依此类推。一维数组中各元素的值被输出之后,此时的循环条件不再成立,指针变量也指向了数组元素a[5]所对应的下一个存储单元,此时的*p已无意义。
5)程序的功能是:求出数组a中的最大数和最小数。
【解析】通过p=q=a;使指针变量p和q均指向数组a的首地址,第2个 for循环中包含两个if语句,第1个if 语句完成最大值的求解,第2个if 语句完成最小值的求解。
6)数组str中的内容是:How are you
【解析】字符型指针ch和p初始时都指向了字符串的首地址。循环中通过下标j和对它的“++”运算,扫视数组str的诸元素;通过指针p和对它的“++”运算,不断地把字符串内容赋给数组str地各元素。最后由语句str[j]=\0;往数组str里填写一个字符串结束符。所以程序运行后,数组str中地内容与ch指向地字符串内容完全相同。
10-5编程题
1)main()
{
int a,b,c,*p1,*p2,*p3;
scanf(“%d,%d,%d”,a,b,c);
if((a=b) {p1=b;p3=a;}
else {p1=a;p3=b;}
if(c=*p3) {p2=p3;p3=b;}
else if(c=*p3){p2=p1;p1=c;}
else p2=c;
pri
您可能关注的文档
- CAXA电子图板2011项目实训教程 教学课件 ppt 作者 胡建生全部答案PDF.pdf
- FANUC 0i-D 0i Mate-D 数控系统连接调试与PMC编程 教学课件 ppt 作者 周兰项目六 与伺服关联参数设定.pdf
- 安全生产标准化教程 教学课件 ppt 作者 王新泉 第6章 图6-1 制定标准的程序.pdf
- Auto CAD2008中文版工程制图实用教程 教学课件 ppt 作者 杨老记说明.doc
- AutoCAD 2012室内装潢设计 教学课件 ppt 作者 段辉AutoCAD2012室内装潢设计-目录.doc
- C#程序设计教程 教学课件 ppt 作者 刘瑞新C#教学建议.doc
- CAXA电子图板2011项目实训教程 教学课件 ppt 作者 胡建生使用说明.doc
- CorelDRAW X4服装设计实用教程 教学课件 ppt 作者 严亦红《项目1:西裙款式设计教案》.doc
- CorelDRAW X4服装设计实用教程 教学课件 ppt 作者 严亦红《项目2:牛仔裤款式设计》教案.doc
- CorelDRAW X4服装设计实用教程 教学课件 ppt 作者 严亦红《项目3:针织衫款式设计》教案.doc
文档评论(0)