- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计案例教程徐翠霞第5章概论
第五章 指针;5.1 “使用指针参数交换两个变量值 ”案例;图5-1 简单记事本窗口;【案例目的】
(1) 熟悉如何定义指针变量,掌握将指针变量作为函数参数的方法。
(2) 掌握通过指针参数由被调函数向主调函数传递多个值的方法。;【技术要点】
由于变量的值始终存放在内存单元中,因此,要交换两个变量的值,只需交换这两个变量对应的存储单元的值即可,这就需要知道两个变量的地址。也就是说,需要保证主调函数与被调函数中所要交换的两个数的内存单元是同一内存单元,即传递的参数是内存单元的地址,而不是内存单元中的值。;【相关知识及注意事项】
1. 指针和地址
2. 指针变量的定义及初始化
3. 指针变量的赋值
4. 指针变量的引用
5. 指针作为函数参数;5.2 “有序数列的插入 ”案例 ;【案例目的】
(1) 熟悉如何定义指针变量,掌握将指针变量指向一维数组元素的方法。
(2) 掌握如何在一个有序的数列中查找合适的位置。
(3) 掌握如何将一个数插入到一个有序数列中。;【技术要点】
(1) 有序数组中插入一个数的关键是找到该数据插入的位置,然后将插入位置及其后的所有元素均后移一位,在空出的位置放入待插入的数据。例如,在13、27、38、49、65、76、97这列有序数据中插入53这个数,成为新的有序数列13、27、38、49、53、65、76、97。
(2) 定义数组时必须多开辟一个存储单元,用于存放待插入的数据。;【相关知识及注意事项】
1. 指针变量的运算
2. 指针与一维数组
;5.3 “两个字符串首尾连接 ”案例;图5.9 两个字符串首尾连接 ;【案例目的】
(1) 学会定义基类型为字符型的指针变量,并将指针变量指向串首的操作。
(2) 掌握通过指针判断字符串结束的方法。
(3) 掌握两个字符串首尾连接的基本操作。;【技术要点】
(1) 定义指针变量p和q,将指针p指向str1串串首,将指针q指向str2串串首。注意,存放str1串的数组要足够大,要能够存放链接后的字符串。
(2) 通过指针p找到str1字符串串尾。
(3) 将q所指字符串接到p所指字符串之后。
(4) 为p所指字符串赋串结束标志。;【相关知识及注意事项】
1. 定义字符指针并使其指向一个字符串
2. 通过字符指针输入输出一个字符串
3. 字符指针作为函数参数
4. 用字符数组和字符指针处理字符串的区别;5.4 “学生成绩查询 ”案例;图5.12 学生成绩查询;【案例目的】
(1) 学会定义一个指向一维数组的指针变量,掌握使其指向二维数组中某一行元素的方法。
(2) 掌握以指向数组的指针作为函数参数的方法。
;【技术要点】
(1) 在main()函数中,定义一个int型二维数组score[5][4],用于存放5个学生的4门功课的成绩。
(2) 在search()函数中设置两个形参。参数pa是一个指向一维数组的指针,它所指向的一维数组有4个int型元素,用来存放被查学生的4门功课的成绩;参数n是int型变量,用来存放被查学生的序号。该函数的功能是将被查学生的4门功课成绩显示在屏幕上。;【相关知识及注意事项】
1. 二维数组元素的指针访问方式
2. 指向一维数组的指针;5.5 “字符串排序 ”案例;图5.15 字符串排序;【案例目的】
(1) 熟悉定义字符指针数组,掌握通过指针数组处理字符串的方法。
(2) 掌握比较两个字符串大小的方法。;【技术要点】
(1) 使用指针数组中的元素指向各个字符串。对多个字符串进行排序,不改动字符串的存储位置,而是改动字符指针数组中各元素的指向。这样,各字符串的长度可以不同,而且交换两个指针变量的???要比交换两个字符串所花的时间少得多。
(2) 调用strcmp()函数,可以比较两个字符串的大小。函数strcmp()的两个参数可以是存放字符串的字符数组,也可以是指向字符串的字符指针。该程序中所用的是指向字符串的字符指针。;【相关知识及注意事项】
1. 指针数组的定义
2. 指针数组与指向一维数组指针的区别
3. 使用字符指针数组存取字符串的方法;5.6 “契比雪夫多项式求值 ”案例;图5.18 契比雪夫多项式求值 ;【案例目的】
(1) 熟悉定义指针函数的指针变量,掌握将指针变量指向函数的方法。
(2) 掌握通过指向函数的指针调用函数的方法。;【技术要点】
(1) 分别定义4个函数,实现对契比雪夫多项式的求值。
(2) 定义一个指向函数的指针,可以指向实现契比雪夫多项式求值的函数。
(3) 通过一个switch语句确定函数指针应该指向哪一个函数。;【相关知识及注意事项】
1. 返回指针值的函数
2. 指向函数的指针
文档评论(0)