版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本书结合汽车技术发展和汽车类专业特点,按照“由简到难、循序渐进”的原则,共设置了“绪论”“汽车程序设计基础”“汽车嵌入式技术基础”三部分内容。通过本书的学习,可以从整体上加深理解汽车电子控制系统的组成和工作原理,对后续的汽车电子控制技术类课程和智能网联汽车技术类课程学习奠定良好的汽车计算机基础。
本书特色:任务驱动,理实一体,学以致用。内容组织由简到难、循序渐进,灵活采用对比法、类比法、启发法、实验法等多种教学方法,有效降低教学难度和学习难度。
本书可作为高职院校汽车类专业的汽车计算机基础教材,也可供从事相关技术的工程人员参考。第1单元:C语言程序设计入门第2单元:利用三种结构程序解决实际问题第3单元:利用数组处理同类型的批量数据第4单元:利用函数实现模块化程序设计第5单元:灵活使用指针处理问题第6单元:利用结构体类型解决实际问题汽车程序设计基础
第3单元利用数组处理同类型的批量数据【单元导读】
思考:已经学过的基本数据类型有哪些?
若用基本数据类型,如何解决10个整型数据的存放和输出问题?
在C语言中,数据类型除了基本类型(整型、实型、字符型),还有构造类型,包括数组、结构体、共用体和枚举类型。其中,数组是将相同类型的若干数据按序组合在一起,即数组是有序同类型数据的集合。单元学习目标:(1)能够利用一维数组处理同类型的批量数据。(2)能够利用字符数组处理多个字符或字符串。3.1.1定义一维数组的方法任务3.1利用一维数组处理同类型的批量数据数组和变量一样,要先定义后使用。定义一维数组的形式:类型标识符数组名[常量表达式];说明:(1)类型标识符可以是基本类型或
构造类型。(2)常量表达式表示数据元素的个数,也称为数组长度。
例如:
inta[10];
该数组有10个整型元素:a[0]~a[9]。
元素编号是从0开始。C语言规定,数组名可以代表数组的首地址(数组首元素的地址)。
系统为数组a分配连续的10个整型内存空间,用来存储10个数组元素。3.1.2一维数组的初始化任务3.1利用一维数组处理同类型的批量数据
在定义数组时,对数组元素赋初值。初值用{}括起来,初值之间用逗号隔开。(1)对全部元素赋初值
inta[5]={1,2,3,4,5};
(2)对部分元素赋初值
inta[5]={1,2,3};
注意:初值个数不能超过指定的元素个数。
此时,也可写成:
inta[]={1,2,3,4,5};inta[5]=
{1,2,3,4,5,6};
特别注意:在定义数组之后,不能一次性对整个数组的所有元素赋值,而只能对每个元素逐个赋值。例如:inta[5];//定义数组a[5]
=
{1,
3,
5,
7,
9};
//错误a[0]=1;a[1]=3;a[2]=5;a[3]=7;a[4]=9;//正确//错误
结果:a[0]=1,a[1]=2,a[2]=3,a[3]=4,a[4]=5
结果:a[0]=1,a[1]=2,a[2]=3,a[3]=0,a[4]=0
3.1.3一维数组元素的引用任务3.1利用一维数组处理同类型的批量数据C语言规定,只能引用某个数组元素而不能一次引用整个数组的全部元素。
一维数组元素的引用形式:数组名[下标]
下标就是数组元素的编号。
【例3.1】一维数组元素的引用:将一组数据倒序输出。#include<stdio.h>intmain(void){
inti,a[10];
for(i=0;i<=9;i++)
a[i]=i;
for(i=9;i>=0;i--)
printf("%d",a[i]);
printf("\n");}
将数组和循环结构相结合,可有效处理同类型的批量数据,大大提高工作效率。任务3.1利用一维数组处理同类型的批量数据【例3.2】利用数组实现:输入若干个整数,找出其中的最大值。#include<stdio.h>#defineN10
//宏定义数据个数intmain(void){
inti,max,a[N];
printf("请输入%d个整数:",N);for(i=0;i<N;i++)scanf("%d",&a[i]);
max=a[0];for(i=1;i<N;i++)if(a[i]>max)max=a[i];
printf("最大值:%d\n",max);}(1)算法分析:如何找到最大值?(2)数据结构选择:采用变量还是数组?(3)代码如何实现?使用宏定义有何好处?3.1.3一维数组元素的引用【同步练习3-1】知识巩固。任务3.2利用字符数组处理多个字符或字符串
用来存放字符型数据的数组是字符数组,字符数组中的每个元素存放一个字符。在嵌入式网络通信软件设计中,可用字符数组存放待发送或待接收的数据。3.2.1定义字符数组的方法
系统为数组c分配连续的10字节内存空间,用来存储10个字符型数据。例如:
charc[10];数组名c代表该数组的首地址。
3.2.2字符数组的初始化任务3.2利用字符数组处理多个字符或字符串
在定义字符数组时,对其进行初始化,最常用的是字符串常量赋值法。也可写成:charc[]="abcde";
charc[]={"abcde"};
特别注意:在定义字符数组之后,不能一次性对整个数组的所有元素赋值。例如:char
c[5];//定义数组c[5]
=
"abcd";
//错误
C语言对字符串常量是按字符数组处理的,在内存中开辟一个字符数组来存放该字符串常量。3.2.3字符数组元素的引用和字符数组的输出任务3.2利用字符数组处理多个字符或字符串
可以通过下标引用字符数组中的一个元素而得到一个字符。【例3.3】输出字符数组中的字符。
#include<stdio.h>intmain(void){
chara[6]="12345";//定义字符数组并初始化inti;printf("字符数组a:");
for(i=0;i<5;i++)
printf("%c",a[i]);//输出字符数组a中的各个字符printf("\n");pri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门诊神经内科护士笔试题及答案2026年
- 教师综合能力题库及答案
- 工业仪表维修题库及答案
- 2026年贵州省仁怀市高一数学上册期末考试模拟试卷附参考答案(预热题)
- 2026年农产品食品检验员四级理论题库(附答案)
- 2026年四川省邛崃市高一数学上册期末考试模拟考试卷附完整答案(典优)
- 语言导论期末题库答案
- 时事政治题库及答案
- 常德中考压轴题库及答案
- 2026年江西省国企招聘考试(财务类)历年参考题库含答案详解
- 2026年浙江省永康市高一化学上册期末考试模拟试卷附完整答案【必刷】
- 2025年规范性文件合法性审核人员招聘考试真题(附答案)
- 2026江苏有线苏州分公司劳务派遣制员工招聘备考题库及答案详解(典优)
- (2025版)中国成人患者围手术期静脉输注利多卡因临床实践专家共识课件
- 学校危化品安全管理自查报告
- 2022年化工厂维修工电气维修配套笔试题及答案 全解版
- 海南省海口市2026年小升初入学分班考试英语考试真题含答案
- 2025年福建省高考物理真题卷含答案解析
- 监控系统操作培训教材
- AI在材料科学中的应用:从智能设计到产业变革
- 2026年及未来5年市场数据中国大型船用曲轴市场竞争态势及投资战略规划研究报告
评论
0/150
提交评论