- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
指针数组 指针数组定义: 如果一个数组的每个元素都是指针类型的数据,则称该数组为指针数组。在指针数组中,每个数组元素都是一个基类型相同的指针变量,都可以存放一个地址。 指针数组的定义格式: 类型名 * 数组名[ 常量表达式 ] ; 例如:int * p[ 5 ] ; 由于[ ]比*优先,所以p首先与“[ 5 ]”结合为p[ 5 ],即定义一个长度为5的p数组,它有5个元素;之后再与前面的“*”结合,指定每个元素都是一个指针变量;最前面的类型名int指出了每个指针变量的基类型,即只能存放int型数据的地址。或者说每个数组元素都是“int *”类型,即指向int型数据的指针类型。可以定义各种类型的指针数组 。 指针数组 例:用指针数组采用起泡法对10个学生成绩按降序排序。要求学生成绩放在s数组中,排序后s数组不允许改变。10个学生成绩为:78,83,61,94,85,89,72,97,47,76。 #include stdio.h void main ( ) { int s[ 10 ] = { 78 , 83 , 61 , 94 , 85 , 89 , 72 , 97 , 47 , 76 } ; int *p[ ] = { s , s+1 , s+2 , s+3 , s+4 , s+5 , s+6 , s+7 , s+8 , s+9 } , i , j , *t ; for ( i = 1 ; i 10 ; i++ ) for ( j = 0 ; j 10 - i ; j++ ) if ( *p[ j ] *p[ j + 1 ] ) { t = p[ j ] ; p[ j ] = p[ j + 1 ] ; p[ j + 1 ] = t ; } for( i = 0 ; i 10 ; i++ ) printf ( %dㄩ , *p[ i ] ) ; printf ( \n ) ; } 运行结果: 97ㄩ94ㄩ89ㄩ85ㄩ83ㄩ78ㄩ76ㄩ72ㄩ61ㄩ47 某班3个学生4门课程的期末考试成绩如图所示 7.3 二维数组的定义和引用 88 91 78 80 93 90 89 95 76 55 67 71 课程1 课程2 课程3 课程4 学生1 学生2 学生3 于是,这组数据可以用具有2个下标的数组来表示,若数组名为s,则数组元素可表示为: s[ 1 ][ 1 ],s[ 1 ][ 2 ],s[ 1 ][ 3 ],s[ 1 ][ 4 ] s[ 2 ][ 1 ],s[ 2 ][ 2 ],s[ 2 ][ 3 ],s[ 2 ][ 4 ] s[ 3 ][ 1 ],s[ 3 ][ 2 ],s[ 3 ][ 3 ],s[ 3 ][ 4 ] 定义二维数组的格式: 数据类型 数组名[常量表达式1][常量表达式2]; 数组元素的存放顺序 在内存中按行顺序存放。 即先存第一行,接着存第二行,以此类推。 例如: 例 int a[3][4]; float b[2][5]; int a[3,4]; (?) 行数 列数 元素个数=行数*列数 int a[3][2] a[0][1] a[1][0] a[1][1] a[2][0] a[2][1] 0 1 4 5 2 3 a[0][0] a[0][0] a[0][1] a[1][0] a[1][1] a[2][0] a[2][1] 0 1 2 3 4 5 6 7 ………... 20 21 22 23 int c[2][3][4] c[0][0][0] c[0][0][1] c[0][0][2] c[0][0][3] c[0][1][0] c[0][1][1] c[0][1][2] c[0][1][3] c[0][2][0] c[0][2][1] c[0][2][2] c[0][2][3] c[1][0][0] c[1][0][1] c[1][0][2] c[1][0][3] c[1][1][0] c[1][1][1] c[1][1][2] c[1][1][3] c[1][2][0] c[1][2][1] c[1][2][2] c[1][2][3] 定义一个二维数组的格式 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]
文档评论(0)