- 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语言9
例: 在上题的基础上,查找一门以上课 不及格学生, 输出其各门课成绩 void search(float (*p)[4], int n) { int i,j,flag; for(j=0;jn;j++) { flag=0; for(i=0;i4;i++) if(*(*(p+j)+i)60) flag=1; if(flag==1) { printf(No.%d is fail,his scores are:\n,j+1); for(i=0;i4;i++) printf(%5.1f ,*(*(p+j)+i)); printf(\n); } } } main() { void search(float (*p)[4], int n); float score[3][4]={{...},{...},{...}}; search(score,3); } 65 52 79 60 80 87 90 81 90 99 100 98 p ? p[j][i] 9.5 二维数组的定义(1) 1、一般形式: 类型说明符 数组名[常量表达式][常量表达式] 例如:int a[3][4]; 包含:a[0][0],a[0][1],a[0][2],a[0][3] a[1][0],a[1][1],a[1][2],a[1][3] a[2][0],a[2][1],a[2][2],a[2][3] 定义了一个3*4(3行4列)的数组. 注意: 不能写成 int a[3,4]; 二维数组的定义(2) 可以把二维数组看作是 一种特殊的一维数组:它的元素又是一个一维数组. 例如:int a[3][4];/*定义了一个3*4(3行4列)的数组. */ 我们可以将a看成一个一维数组:a[0]、 a[1]、 a[2], 每个元素又是包含4个元素的一维数组。 a[0]---------a[0][0] a[0][1] a[0][2] a[0][3] a a[1]---------a[1][0] a[1][1] a[1][2] a[1][3] a[2]---------a[2][0] a[2][1] a[2][2] a[2][3] 二维数组的存放 2、存放顺序:按行存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。 int a[3][4]; a[0][0] a[0][1] a[0][2] a[0][3] a[1][0] a[1][1] a[1][2] a[1][3] a[2][0] a[2][1] a[2][2] a[2][3] 1、数组元素的表示形式: 数组名[下标][下标] 二维数组的引用 例如:a[3][4] 区分在定义数组时用的a[3][4]和引用元素a[3][4] 下标可以是整型表达式 例如:a[2-1][2*2-1] 数组元素可以出现在表达式中,也可以被赋值。 例如:b[1][2]=a[2][3]/2; 2、注意:使用数组元素时,下标值应该在定义的数组大小的范围内。 不要出现这样的错误: 例如:int a[3][4]; a[3][4]=3; 1、分行给二维数组赋初值。 二维数组的初始化(1) 例如:int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; 1 2 3 4 5 6 7 8 9 10 11 12 2、可以将所有数据写在一个花括弧内,按数组排列的顺 序对各元素赋初值。 例如:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; 1 2 3 4 5 6 7 8 9 10 11 12 二维数组的初始化(2) 3、可以对部分数据赋初值。 例如: int a[3][4]={{1},{5},{9}}; 1 0 0 0 5 0 0 0 9 0 0 0 例如: int a[3][4]={{1},{0,6},{0,0,11}}; 1 0 0 0 0 6 0 0 0 0 11 0 例如: int a[3][4]={{1},{5,6}}; 1 0 0 0 5 6 0 0 0 0 0 0 例如: int a[3][4]={{1},{},{0,0,11}}; 1 0 0 0 0 0 0 0 0 0 11 0 二维数组的初始化(3) 4、如果对全部元素赋初值(即提供全部初始数据), 则定义数组时对第一维的长度可以不指定, 但第二维的长度不能省。 例如:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; 等价于:int a[][4]
您可能关注的文档
最近下载
- 皮带硫化知识.doc VIP
- [紧固件]常用紧固件选型设计.pdf VIP
- 高速公路钢筋混凝土盖板涵首件施工方案.doc VIP
- 解读《GB_Z 44526 - 2024无损检测 操作能力鉴定》全面解读.docx VIP
- 本田GX630-660-690发动机维修手册.pdf VIP
- 2025四川成都东部集团有限公司及下属企业招聘产业招商等岗位94人笔试备考题库及答案解析.docx VIP
- (全国通用)01-2023年秋季高一入学分班考试模拟卷地理试题(解析版).docx VIP
- 20210129-中信建投-因子深度研究系列:高频订单失衡及价差因子.pdf VIP
- 发电厂检修规程.docx VIP
- 2024-2025学年度第二学期期末综合素质调研七年级英语试题(含听力材料及答案).docx
文档评论(0)