计算机二级c语言 数组

上传人:第*** 文档编号:34094108 上传时间:2018-02-20 格式:DOC 页数:33 大小:119.50KB
返回 下载 相关 举报
计算机二级c语言 数组_第1页
第1页 / 共33页
计算机二级c语言 数组_第2页
第2页 / 共33页
计算机二级c语言 数组_第3页
第3页 / 共33页
计算机二级c语言 数组_第4页
第4页 / 共33页
计算机二级c语言 数组_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《计算机二级c语言 数组》由会员分享,可在线阅读,更多相关《计算机二级c语言 数组(33页珍藏版)》请在金锄头文库上搜索。

1、第九章 数组引言:C 语言中简单数据类型:int float double char int * int*构造数据类型:数组 数组定义:把类型相同的若干个变量组合到一块,它们有一个的组名,具体表示每一个变量是用组名和该变量在组中排的位置组成。 程序中代码表示:int a5;a0a1.a4存储图:a0 a1 a2 a3 a41111 1115 1119 1123 11271.一维数组的定义和一维数组元素的引用(1)一维数组的定义形式:类型名 数组名整型常量表达式 类型名:数组元素的类型数组名: 合法的表示法整型常量表达式:确定组的大小int a,i=3;int a3; int a2+1;flao

2、t a3;double a3;char a3;int *a,*b,*c;int *a3;int ai; 非法int a3.0;非法(2)一维数组的引用下标:确定每一个具体元素在组中的位置。下标从 0 开始且不可越界,下标的类型(整型常量、整型常量表达式、已经定义且赋值的整型变量)形式:组名下标 ;举例: int a3,i=1,j=0;a0 a1 a2a1+1ai ai+ja3 非法a-1 非法a1.5 非法总结:int a3,i=1;数组名:a 元素及其元素的个数:3 a0 a1 a2 下标的下界和上界 0 1 2存储图: 一维数组名:一个数组元素实质就是一个变量,代表内存中的一个存储单元。一

3、个数组代表了内存中一串连续的存储单元。C 语言中一维数组名中存放的是一串连续存储单元的首地址,它是一个地址常量。一维数组名可理解为一个指针,它的基类型为数组类型。不可以对它重新赋值,也不可以用数组名 a 代表 a0.a1这些数组元素。 理解为指针a0 a1 a2 a3 a41111 1115 1119 1123 1127int a5,k,*p=a0 a1 a2a41111 1115 10 20 30a:数组名,理解为指针值:1111 &a0 a 常量a=p; a+; 非法p=a;基类型: int (3)一维数组的初始化(赋值)int a=1;int a3=1,2; 0char a3=0,1 ;

4、 0int a=0 ,0,0; 3(4)一维数组编程例:求所有元素的平均值#include stdio.hmain()int a6=72,98,87,64,57,77;int sum=0,i;doble ave;for(i=0;iint *fun(int a10,int n) 1int *ain a int b10; 10.return b;main() int w10,*p;.p=fun(w,10); &w0 1111.4.一维数组应用举例*(1)编写 fun 函数,将数组中数按颠倒的顺序重新存放。操作时不可另外开辟数组,只能借助一个临时存储单元。*(2)已知一个数组中的值在 0-9范围内的

5、整型一维数组,统计每个整数的个数.分别用数组元素 c0到 c9统计整数0-9 的个数。当数组元素 ai中的值为 0 时,表达式 cai(即 c0)增1,实现整数 0 的个数增 1 的运算。以后在一个循环中依次改变 a 数组元素的下标来逐个引用 a 数组中的元素。用表达式 cai+则可统计各整数的个数。*(3) 用选择法对数组中的数进行排序(按由小到大)5.二维数组的定义和二维数组元素的引用(1)二维数组的定义(在逻辑结构上可理解为一个具有行和列的矩阵 )int a3;类型名 数组名常量表达式 定义形式:类型名 数组名常量表达式 1常量表达式 2类型名:数组元素的类型 数组名:合法的用户标示符常

6、量表达式:行列举例:int a;int a6;int a23;数组名: a 数组元素个数: 6 逻辑结构:第 0 列 第 1 列 第 2 列第 0 行 a00 a01 a02a0 a1 a2第 1 行 a10 a11 a12a3 a4 a5物理结构:a 数组中的元素在内存中占一串连续的存储单元。a00 a01 a02 a10 a11 a12 1111 1115 1119 1123 1127 1131aa0 a11111 1123a00 a01 a02 a10 a11 a12 1111 1115 1119 1123 1127 1131二维数组可看成是一个一维数组,每一个数组元素又是包含了若干个元

7、素的一维数组。a 数组可看做由 a0和 a1两个元素组成的一维数组。a0 和 a1又分别由 3 个元素组成的一维数组。int a23;行:a a0 a1 列 a0 a00 a01 a02a1 a10 a11 a12(2)二维数组元素的引用(必须带两个下标)数组名下标 数组名下标表达式 1下标表达式 2int a23,i=0,j=1,k=1;a00 a12 a11+1aij+ka1.02a1,2ai,j+2(3)二维数组的初始化int a=1,2;int a23=1,2,3,4,5,6;int a23=1,2,3,4;int a23=1,2;int a23=1,2,3,4;(4)通过赋初值定义二

8、维数组的大小(一般只省略第一维的大小)int a3=1,2,4,5,6;int a3=1,2,3,4,5,6,7;商商+1举例:a00 a01 a0210 20 30a10 a11 a1240 50 60scanf(“%d”,0 10 21 01 11 2&aiji=0 j=0 1 2i=1 j=0 1 2main()int a23,i,j;for(i=0;imain()int a34;.fun(a);fun( int (*p)4 )fun(int p4 )fun(int p34 )形参为一个存储单元(2)指针数组名作实参时,形参必须为一个指向指针的指针#includemain()int a34,*p3;for(i=0;i3;i+) pi=ai; p0=&a00fun(p);&p0 .fun(int *q ) q=p &p0fun(int *q )fun(int *q3 )8.二维数组程序举例0701 数组行交换0201 数组列交换

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号