C语言函数二维数组(c语言二维数组用法)
C语言函数二维数组,原文标题:C语言二维数组详解。理解一维数组的精髓,二维数组更容易掌握了。先来复习
C语言函数二维数组,原文标题:C语言二维数组详解。
理解一维数组的精髓,二维数组更容易掌握了。
先来复习一维数组程序应用,请填空统计全班某门功课的平均分数和最高分数 (设全班55人)。
问题分析:求全班某门课的平均分和最高分
模式识别:平均分为累加求和,再除以人数即可。求最高分可用“打擂台”方法求最大值。
模式归纳:用数组表示全班成绩,用循环求平均分和采用打擂台算法求最高分。用printf语句输出结果。
程序实现:
# define N 55main(){ int i,sum=0,max,score[N];float average;printf(“input everyone’s score:n”);for( _____________;_________;_________ )scanf(“%d”,__________);for(______;______;_______ ){sum =_______;if(score[i]>max) max=________;}average=_________;printf(“average=%fn”,average);printf(“max=%dn”,max);}
答案:

在处理有些问题时需要用到二维数组来处理。例如,有4个小分队,每队有5名队员,要把这些队员的游泳成绩用数组保存起来,这就需要用到二维数组,如图。如果建立一个数组score,它应当是二维的,第一维用来表示第几分队,第二维用来表示第几个队员。如score2,3表示2分队队员3的成绩,她的值是87.
队员1 | 队员2 | 队员3 | 队员4 | 队员5 | |
1分队 | 87 | 75 | 93 | 82 | 89 |
2分队 | 91 | 84 | 87 | 92 | 90 |
3分队 | 76 | 79 | 84 | 88 | 80 |
4分队 | 91 | 95 | 92 | 83 | 85 |
一、怎样定义二维数组
(一)二维数组的定义
二维数组定义基本概念与方法和一维数组相似,一般形式为:
类型符 数组名[常量表达式][常量表达式];
如int a[3][4],b[4][M];(M为符号常量)
定义a为3*4(3行4列)的整型数组
b为4*M(4行M列)的整型数组
C语言对二维数组采用这样的定义方式,是的二维数组可被看作一种特殊的一维数组:她的元素又是一个一维数组。例如,可把a看作一种特殊的一维数组,它有3个元素:a[0],a[1],a[2]
每个元素又是一个包含4个元素的一维数组,如图:

可以把a[0],a[1],a[2]看作一维数组名。上面定义的二维数组可以理解为定义了三个一维数组,即相当于:
Int a[0][4],a[1][4],a[2][4];
此处把a[0],a[1],a[2]看作一维数组名。C语言用这种处理方法在数组初始化和用指针表示时显得很方便,这在以后会体会到。
(二)二维数组的存储
C语言中,二维数组中元素排列的顺序是按行存放的,记载内存总顺序存放第1行的元素,接着在存放第2行的元素。
如 int a[3][2];a[3][2]中的元素在内存中按行连续排放,如图.

注意:二维数组在逻辑上,有行列关系。但在内存中,各个元素是连续存放的,是线性的,而非二维的。这点务必请明确。
二、怎样引用二维数组的元素
同一维数组,二维数组的表示形式为:
数组名[下标][下标]
下标应是整型表达式。
如:int a[2][4];
二维数组下标的有效范围同一维数组,均从0开始,最大值为定义时下标减1。
如a数组元素的下标下限值是a[0][0],上限值是a[1][3]。这点要特别注意。
数组元素也可以出现在表达式中,也可以被赋值,例如:
b[1][2]=a[1][3]/2;
三、二维数组的初始化
可用“初始化列表”对二维数组初始化。如果不给二维数组初始化,则系统默认二维数组各元素为0.
本文《C语言函数二维数组(c语言二维数组用法)》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。随机文章
SEO小小课堂网SEO教程
友情链接交换
搜素引擎算法
网站内容优化
GEO培训
站长导航
搜素引擎算法
百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:金教员,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/878198.html

微信扫一扫
支付宝扫一扫