- 4
- 0
- 约9.08千字
- 约 40页
- 2018-12-21 发布于福建
- 举报
d07三_数组
一维数组二维数组字符数组与字符串数组作为函数参数程序举例 为什么使用数组? 问题1:编程找出2个整数的最大值并输出。 算法分析: 步骤1:定义3个整型变量a、b和max。 步骤2:从键盘输入变量a和b的值。 步骤3:如果a大于b,则将a赋值给max,反之将b赋值给max。 步骤4:输出max的值。 问题2:编程找出100个整数的最大值并输出。 算法分析: 步骤1:定义100个整型变量和1个整型变量max。 步骤2:从键盘输入这100个变量的值。 步骤3:两两数据进行比较,找出最大值,依此类推,直到最终找到最大值max。 步骤4:输出max的值。 为什么使用数组? 现实生活中,为了管理或工作上的方便,通常,人们会给同一类型的物品起一个统一的名称,然后通过一个唯一的编号,来区分这一类型中的每一个物品。 C语言提供了这样一种能够保存多个相同类型的数据类型——数组,其中的每个个体称为数组元素。 处理数据量大,且具有相同性质的数据问题时,利用数组类型可以简单、方便地完成程序设计。 问题2:编程找出100个整数的最大值并输出。 算法分析: 步骤1:定义1个能够保存100个整数的数组和1个整型变量max。: 步骤2:找出数组中的最大值并赋值给max。 步骤3:输出max的值。 数组的相关概念 数组:具有相同类型的数据组成的序列,是有序集合。 数组元素:数组中的每一个数据称为数组的一个元素(或称数组分量、下标分量)。 下标:数组元素在数组中的位置,即编号。 数组长度:数组中元素的个数。 一维数组 从标题可以看出,数组是有维数这个概念的,那么数组的维数是怎样确定的呢? 在C语言中,数组下标的个数称为数组的维数,因此只有一个下标的数组称为一维数组。 一维数组的定义 定义形式:数组类型 数组名[常量表达式]; 说明: C语言中,数组中存放的是多个具有相同类型的数据,因此数组类型由存放在数组中的数据类型决定。 数组名任意给定,其命名规则和变量名相同。 常量表达式是数组的长度,即数组中元素的个数,数组一旦定义,其长度不能改变。 习惯上用宏定义描述数组长度。 一维数组的初始化 数组定义的同时可以给数组元素赋初值,这个过程称为数组的初始化。 说明: 数组定义的同时可以给数组所有元素或部分元素赋初值,多个数据值之间用逗号分隔,赋值过程为位置上的一一对应关系,即第1个数据值赋值给第1个数组元素,依此类推。 数组定义的同时给全部元素赋初值,可以省略数组长度。 数组定义之后再赋值,必须为指定的数组元素赋值。 数组元素的引用 一般形式:数组名[下标] 说明: 数组不能整体引用,只能引用单个数组元素。 C语言中,数组下标的范围是:0~数组长度-1。也就是说,下标的默认起始值是0。 下标是数组元素在整个数组中的顺序号,可以是整型常量、整型变量或整型表达式。 数组元素可以像普通变量一样使用,例如:赋值、输入、输出、运算等。 一维数组的存储结构 数组定义之后,就会在内存中分配一段连续的存储空间用于存放该数组。 数组名代表数组的首地址,即a就是a[0]。 结论:数组在计算机中的存储为从数组首地址开始按照数组元素的个数和每个数组元素所需字节数分配连续的存储单元依次存储数组的每个元素。 数组元素地址=数组起始地址+元素下标×sizeof(数组类型) 一维数组的基本知识prg7-1.c #include stdio.h #define N 5 void main() { int a[N]={1,2,3,4,5}; //等价于int a[]={1,2,3,4,5}; int i,b[N]; printf(输出数组a中的所有元素值\n); for(i=0;iN;i++) printf(%d ,a[i]); printf(\n); for(i=0;iN;i++) //数组经常需要和循环结构配合使用 { printf(从键盘输入数组b的第%d个元素的值\n,i+1); scanf(%d,b[i]); } printf(输出数组b中的所有元素值\n); for(i=0;iN;i++) printf(%d ,b[i]); printf(\n); } 一维数组的应用 最值问题 筛法的使用 查找的实现 排序的实现 找出10个整数的最大值prg7-2.c #include stdio.h #define N 10 //通常习惯用宏定义描述数组长度 void main() { //步骤1:定义1个长度为10的整型数组,2个整型变量i和max int a[N]={1,100,-98,16,72,-1024,1024,34,-58,10},i,max; //步骤2:假设数组的第一个元素就是最大值max max=a[0]; //步骤
您可能关注的文档
- APQP产等品质量先期策划.ppt
- ARVCTVR术都后右室起搏致右室失同步.ppt
- ARVC都单形性室速导管消融还是ICD.ppt
- ASBJ2014-何崚-天猫五化战略下的电但商架构(放出稿).pptx
- ASM模等块零件组立及产品分模培训教材.ppt
- ARC规划全球产品多没国家多语言一套代码.ppt
- AutoCAD2012标准教程-第说5章 线型、线宽、颜色及图层.ppt
- ATP的主要来源――三细胞呼吸.ppt
- autoCAD20都04教程 装配图的绘制.ppt
- ASME焊呢接培训.ppt
- 全过程工程管理造价咨询工程监理项目服务方案投标方案(技术部分).doc
- 招标代理服务投标技术服务方案(技术方案).doc
- AI大模型与AIGC技术在公安领域的应用解决方案(99页 PPT).pptx
- 工业4.0智能制造数字工厂规划方案.pptx
- 树立社会主义核心价值观.docx
- 三年(2023-2025)中考历史真题分类汇编(全国)专题21 科技文化与社会生活(解析版).docx
- 2025年中考道德与法治真题完全解读(吉林卷).pdf
- 2025年中考道德与法治真题完全解读(安徽卷).pdf
- 三年(2023-2025)中考历史真题分类汇编(全国)专题14 人民解放战争(解析版).pdf
- 三年(2023-2025)广东中考历史真题分类汇编:专题03 中国近代史(八年级上册)(解析版).docx
最近下载
- 期末专题复习书面表达满分范文必背10篇人教版英语八年级上册(1).docx VIP
- 2026天津市津南创腾经济开发有限公司招聘8人考试笔试参考题库及答案解析.docx VIP
- 四川省成都市双流区2024-2025学年八年级上学期期末历史试题(含答案).docx VIP
- 1岗位操作指南-管家V2.0(A4版)修订稿.pdf VIP
- 山东省菏泽市2024-2025学年高一上学期期末考试语文试题.pdf VIP
- 痤疮护理 ppt课件资料讲解.ppt VIP
- 服装品类商业计划书.pptx VIP
- (正式版)DB15∕T 3202-2023 《高纬度多年冻土区公路工程地质勘察技术规范》.docx VIP
- 160个风机特性曲线.docx VIP
- 月考试卷Unit3-4(试题)人教PEP版英语六年级上册.docx VIP
原创力文档

文档评论(0)