首页 > 编程知识 正文

c语言程序设计例题,C语言程序设计教程

时间:2023-05-06 14:15:07 阅读:110508 作者:1621

C语言的二维数组定义

一维数组只有一个下标,称为一维数组,其数组元素也称为单下标变量。 因为在实际问题中很多量是二维或多维的,所以在c语言中可以构筑多维数组。 多维数组元素也称为多下标变量,因为它们有多个下标以标识数组中的位置。 本节介绍二维数组。 多维数组可以从二维数组类推得到。

二维数组定义一般形式是类型说明符数组名[常数式1][常数式2]

其中,常数式1表示一维下标的长度,常数式2表示二维下标的长度。 例如,int a[3][4];

显示了数组名称为a且下标变量类型为整数的3行4列数组。 数组的下标变量共有34个,也就是说:

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]

二维数组在概念上是二维的。 也就是说,下标向两个方向变化,下标变量在数组中的位置也位于平面中。 不像一维数组那样只是一个向量。 但是,实际的硬件存储器是连续寻址的。 也就是说,存储单元在一维中呈直线排列。 在一维存储器中存储二维数组的方法有两种。 一种是按行排列,即在放置第一行后,依次放置第二行。 另一个是按列排列。 也就是说,先放一排,再按顺序放入第二排。

在c语言中,二维数组按行排列。 即,首先存储a[0]行,然后存储a[1]行,最后存储a[2]行。 每行还按顺序存储四个元素。 数组a被描述为int型,该类型占用2字节的内存空间,因此各元素占用2字节)。

引用二维数组元素

二维数组中的元素也称为双引号变量,表示为:

数组名称[下标][下标]

其中下标必须是整数常数或整数表达式。 例如:

a[3][4]

表示a阵列的3行4列的元素。

下标变量和数组的说明在形式上有点相似,但两者有着完全不同的含义。 数组说明的方括号中表示的是某一维的长度,可以去掉目标的最大值; 数组元素的下标表示元素在数组中的位置。 前者只能是常数,后者可以是常数、变量或表达式。

【例7-6】一个学习小组有五个人,每人有三门考试成绩。 求出全组分科的平均成绩和各科的总平均成绩。

-张王李赵追寻的大树/p Math8061598576

C7565638777

Foxpro9271709085

可以设置一个二维数组a[5][3]来保存五个人的三门成绩。 在另一个一维排列v[3]中存储求出的各科的平均成绩,将变量average作为全组各科的总平均成绩。 编程如下。

#include《stdio.h》intmain(void ) { int i,j,s=0,average,v[3],a[5][3]; printf(「inputscoren " ); for(I=0; I‘3; I ) for(j=0; j《5; j () Scanf )“%d”,a[j][i]; s=s a[j][i]; } v[i]=s/5; s=0; }average=(v[0]v[1]v[2] )/3; printf (“math:% dNC languag:% dnd base:% dn”,v[0],v[1],v[2] ); printf(「total:%dn ",average ); 返回0; }

程序首先使用了双重环路。 依次读取内循环课的各学生成绩,累计这些成绩,退出内循环后,将该累计成绩除以5并送入v[i]是该课的平均成绩。 外循环共循环3次,分别求出3个科目的平均成绩并存入v序列。 退出外循环后,将v[0]、v[1]、v[2]加起来除以3,即可得到各科的总平均成绩。 最后根据题意输出各项成绩。

C语言的二维数组规则

定义二维阵列时,请注意以下事项:

1 :二维数组说明符需要用方括号括起来的常量表达式。 常数表达式的值必须是正整数。 “常数式1”可以认为是矩阵行数,“常数式2”可以认为是矩阵的列数。

2 )二维数组的元素在存储器中占用一系列连续的存储单元。 内存中数组元素的排列顺序为:首先存储第0行元素,然后存储第一行元素。 此存储顺序称为逐行存储。

3 )二维数组可以认为是一维数组,每个数组元素又是包括几个元素的一维数组。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。