- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7章节 数组
第7章 数组;本章主要内容;数组的引进;数组举例:;7.1.1 一维数组的定义;定义一维数组时,说明几点:;注意:;7.1.2 一维数组的引用;【例7.1】从键盘输入5个整数,将它们反序输出。;7.1.3 一维数组的初始化;说明:;C语言规定,只有静态存储(static)数组、外部存储(extern)数组才能初始化。
新的C标准(如Turbo C中)更允许对局部自动(auto)数组初始化。
如果定义数组时没有对数组元素初始化,外部数组和函数的局部静态数组中的所有元素都将被自动初始化为0。
Turbo C编译系统对在main函数下的静态存储数组初始化时,可省略static关键字。;为数组中若干元素赋相同初值时,要注意不能随意简化。
例如:
float var[8]={ 0.1,0.1,0.1,0.1,0.1,
5.5,3.5,5.5};
不能简化为:
float var[8]={ 0.1*5,5.5,3.5,5.5};
否则,系统将认为数组中的各元素的值分别为:
var[0]=0.1*5,var[1]=5.5,var[2]=3.5,var[3]=5.5,var[4]=0,……,var[7]=0。;允许以赋值方式为数组各元素赋初值。
例如:
float var[4];
var[0]=0.1*5;var[1]=5.5;var[2]=3.5;var[3]=5.5;
也可以使用控制语句为数组元素赋初值。static float var[4];
int i;
for(i=0;i4;i++)
scanf(“%f”,var[i]);
……;【例7.2】计算从键盘上任意键入的10个数的和。;关于排序---程序设计中的常见算法;从所有的数中找出最小的一个,将其放在最前面;接着在余下的数中找出最小的一个,将其放在第二位,依次类推,数列由前往后逐渐成型。;选择法第一轮:先找出序列中最小的一个。;选择法第二轮:找出余下序列中最小的一个。;源程序清单如下:;选择法排序中的核心程序段:;对相邻两个数进行比较,将较小的调到前面,两两比较一轮之后,最大的一个数被放置在最后面;接着从头开始重复执行以上操作,次大的数被放置在倒数第二位,依次类推,数列由后往前逐渐成型。;冒泡法的核心:小数上浮,大数下沉。
冒泡法第一轮:使最大的数放在最后一个位置上;冒泡法第二轮:使次大的数放在倒数第二个位置上!;源程序清单如下:;冒泡法排序中的核心程序段:;7.2.1 二维数组的定义;几点说明:;多维数组的定义:;说明:;7.2.2 二维数组的引用;说明:;7.2.3 二维数组的初始化;方法2:分行为二维数组赋值。适用于每一行的初始值个数少于每一行中的数组元素个数时。
例如:
int num[3][4]={{11,2},
{51,6,7},
{92,10,0,12}};;二维数组的长度不能随意省略,必须遵守如下规则:;使用第二种方式,无论是为二维数组的所有元素赋初值,还是为二维数组的部分元素赋初值,定义数组时都可以省略第一维的长度。
无论采用上述哪一种方式为二维数组元素赋初值,在定义数组时第二维的长度都绝对不可以省略。;【例7.6】 有一个3×4的矩阵,编写一个程序,找出其中的最大值和最小值,并输出其所在的行号和列号。;【例7.7】 从键盘上任意键入一个3行4列的矩阵,要求输出其转置矩阵(注意换行输出)。;7.3 字符数组;字符数组的定义及引用;字符数组的初始化(方法一);说明:;方法:用字符串常量为字符数组中各元素赋初值。
说明:每个字符串尾都有一个‘\0’,作为字符串结束标志。
;举例:;字符数组的输入输出;【例7.9】逐个字符输出“Hello,World!”。;【例7.11】用“%s”格式符输入、输出字符串。;字符数组的输入输出;格式:gets(字符数组名);
功能:
直接输入字符串,直到到遇回车为止。;格式: puts(字符数组???);
功能:
直接输出字符串,直到遇到结束标志‘\0’为止,输出后自动换行。;【例7.13】使用gets函数和puts函数实现二维字符数组的输入、输出。;字符串处理函数;(1) 字符串连接函数;(2) 字符串比较函数;(3) 求串长函数;(4)字符串拷贝函数;【例7.15】字符串拷贝示例。;(5) 其他字符串处理函数;【例7.16】任意键入3个字符串,编程找出最小的一个。;Homework;Class is over.
文档评论(0)