- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计 安徽农业大学 信息与计算机学院 第6章 数 组 本章主要内容 1、一维数组的定义及应用; 2、二维数组的定义及应用; 3、字符数组的定义及应用; 6.1 一维数组 6.1.1 一组数组的定义 类型说明符 数组名[常量表达式] 说明: “类型说明符”可以是int、char、float等基本数据类型或构造数据类型。 数组名的命名规则与变量名相同 “常量表达式”表示数组元素的个数,即数组长度,表达式中可以包括数值常量、字符常量以及符号常量,但不能包含变量。 6.1.2 一维数组元素的引用 数组元素的表示形式:数组名[下标] 说明:下标是指该元素在数组中的位置,可以是整型的常量、变量或表达式。 例6.1 使数组元素a[0]~a[9]的值为0~9,然后逆序输出 6.1.3 一维数组的初始化 对全部或部分元素赋初值 全部初始化 例如:int c[10] = { 0,1,2,3,4,5,6,7,8,9}; 部分元素初始化 例如:int c[10] = {0,1,2,3,4}; 全部元素均初始化为0 例如: int c[10] = {0,0,0,0,0,0,0,0,0,0}; 或:int c[10] = {0}; 3. 在对全部数组元素赋初值时,可以不指定数组长度 例如:int c[10]={0,1,2,3,4,5,6,7,8,9}; 可以写成:int c[ ]={ 0,1,2,3,4,5,6,7,8,9}; 系统会将此数组的长度自动定义为10。 6.1.4 一维数组应用举例 例6.2用数组求出Fibonacci数列前20项,并输出。 例6.3 用选择法对a数组的10个数组元素从小到大进行排序。 选择法排序的思想是: 首先将a[0]与它后面a[1]~a[9]依次比较,如果找到一个小的元素就与a[0]交换,最后a[0]为a[0]~a[9]中最小; 其次将a[1]与它后面a[2]~a[9]依次比较,最后a[1]为a[1]~a[9]中最小; 再次将a[2]与它后面a[3]~a[9]依次比较,最后a[2]为a[2]~a[9]最小; … 依次进行,直到最后的a[8]与它后面的a[9]比较,最后a[8]为a[8]~a[9]中的最小。 这样10个数组元素选取9个小的数据即实现了由小到大的排序。 #include stdio.h void main() { int i,j,m,a[10]; for (i=0;i10;i++) scanf(“%d”,a[i]); /* 从键盘输入数组元素的值 */ for(i=0;i9;i++) /* 排序 */ for(j=i+1;j10;j++) if(a[j]a[i]) { m=a[j];a[j]=a[i];a[i]=m;} /* 交换 */ for(i=0;i10;i++) printf(%5d,a[i]); /* 输出数组元素 */ } 例6.4 用冒泡法对a数组的10个数组元素从小到大进行排序。 冒泡法排序的思想是: 相邻两个元素进行比较,使前面的小后面的大,比较的过程中若后面的元素小则进行交换; 过程如下: 第一趟比较:a[0]~a[9]相邻元素进行比较,使前小后大,一趟比较完之后最大的数沉到最后a[9]中; 第二趟比较:a[0]~a[8]中相邻元素比较,前小后大,最后次大的数沉到a[8]中; … 第九趟比较:a[0]与a[1]比较,最大数沉到a[1]中。 这样10个数组元素选取9个大的数据即实现了由小到大的排序。 #include stdio.h void main() { int i,j,m,a[10]; for (i=0;i10;i++) scanf(%d,a[i]); /* 给数组元素赋值 */ for(i=0;i9;i++) /* 排序 */ for(j=0;j10-i;j++) if(a[j+1]a[j]) {m=a[j];a[j]=a[j+1];a[j+1]=m;} /* 交换 */ for(i=0;i10;i++) printf(%5d,a[i]); /* 输出数组元素 */ } 6.2 多维数组 6.2.3 二维数组的初始化 找出三行三列的二维数组中最大元素及其所在的行和列。 要求: 1)数据元素的值从键盘读入; 2)找出最大元素及其所在的行和列; 3)显示最大元素及其所在的行和列 参考代码段: for(i=0;im;i++) { for(
您可能关注的文档
最近下载
- 学堂在线 中医养生方法学 章节测试答案.docx VIP
- DB11 687-2009 公共建筑节能设计标准.docx VIP
- 空分安全操作规程.pdf VIP
- 食堂食材配送肉类禽类水产品食品配送供货渠道链方案.docx VIP
- GB50229-2019 火力发电厂与变电站设计防火标准.docx VIP
- TikTok Shop 2024年度报告-特看.pdf VIP
- 新版人教版小学语文一年级上册全册教案.docx
- 2024新人教版地理七年级上册《第四章 天气与气候》大单元整体教学设计[2022课标].pdf
- 电工技术项目教程(第2版)高职全套教学课件.pptx
- 食堂食材配送肉类禽类水产品食品配送售后服务方案.docx VIP
文档评论(0)