版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机科学技术学院教案计算机科学技术学院教案答疑时间:每周四晚自习答疑地点:2311教室第14次课程名称程序设计基础任课教师曹哲授课班级软件08-1班授课地点1418授课时间2008年4月20日星期一第任课教师课题:7.2二维数组的定义和引用主要教学内容:二维数组的定义、初始化和引用、程序举例;教学目标:使学生掌握二维数组的定义、初始化和引用方法。重点:二维数组的定义、初始化和引用方法。难点:二维数组的用法。教学过程设计:首先简单复习一维数组的定义和引用。然后介绍二维数组的定义、引用和初始化方法,强调将二维数组看成一维数组的一维数组的优点,用实例讲解引用方法和各种初始化方法,最后举出一个求最大值及其所在行和列的设计例子,突出讲解二维数组的用法。并给出传统流程图。教学手段:采用黑板教学、以实例讲解,以便突破难点;并采用实例加必要的直观图形的手段。作业:教学内容:见下页。7.2二维数组的定义和引用一、定义:类型说明符数组名[常量表达式][常量表达式]×例:floata[3][4],b[5][10];a[3,4],b(5,10)或a(3)(4)×目的:可将二维数组看成一维数组的一维数组。a[0]—a[0][0],a[0][1],a[0][2],a[0][3]—0行a数组a[1]—a[1][0],a[1][1],a[1][2],a[1][3]—1行a[0]—a[2][0],a[2][1],a[2][2],a[2][3]—0行a[0][0]a[0][1]a[0][2]a[1][3]a[0][0]a[0][1]a[0][2]a[1][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]第0行第1行第2行100010161032优点:便于初始化、用指针表示。内存存放—按行存放。a[0][0]a[0][1]a[0][2]a[1][3]a[0][0]a[0][1]a[0][2]a[1][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]100010161032第0行第1行第2行可定义多维数组:如:intx[2][3][4];—按行、列、竖存放。二、引用1.二维数组元素表示形式:数组名[下标][下标]如:a[2][2*2-1]=>a[2][3]A[1.4][1.8]=>a[1][1]?—不行!!!?不兼容的类型。编译时将出现:ErrorE:\TC3\BIN\CAO1.C4:Operandsareofdifferingorincompatibletypeinfunctionmain()意为:在CAO1.C的第4行主函数中操作数不一致或不相容的类型错误。operand[כ'pərænd]n.运算对象,运算数,运算量[域],操作数,基数。Differ['difə]vi.不(相同),不一致,意见不同。Incompatible[inkəm'pætibl]a.不相容(性),性质相反。2.数组元素变量,可出现在表达式中,也可被赋值。3.使用数组,下标不要超界。如:inta[3][4];……a[3][4]=23;←TurboC不做检查,上下界都不查,但危险!a[–1][3]=11;三、初始化1.分行赋初值—较清楚。intx[2][3]={{1,2,3},{3,2,5}};2.按元素顺序赋初值—警告doublea[2][2]={1,2,3,4};编译时将出现:WarningE:\TC3\BIN\CAO1.C3:Initializationisonlypartiallybracketedinfunctionmain()3.可给出部分初值。100400inta[2][3]={{1},{4}};100400040008inta[2][3]={{0,4},{0,0,8}};040008000100inta[2][3]={{},{1}};0001004.如对全部元素赋初值,可不指定第一维的长度。inta[][3]={{1,2,3},{4,5,6}};a[2][3]000123inta[][3]={{},{1,2,3}};000123123400123400inta[][3]={1,2,3,4};四、举例例:有2×3矩阵,求最大元素值及其所在的行列号。forj=0to2a[i]forj=0to2a[i][j]>maxmax=a[0][0],row=0,column=0TFfori=0to1输出max、row、column1.算法N-S流程图2.程序如下:#include<stdio.h>voidmain()max=a[i][j]row=imax=a[i][j]row=icolumn=jinta[2][3]={{8,9,6},{-10,10,2}};intmax=a[0][0];for(i=0;i<2;i++)for(j=0;j<3;j++)if(a[i][j]>max){max=a[i][j];row=i;column=j;}printf(“max=%d,row=%d,column=%d\n”,max,row,column);}运行结果:max=10,row=1,column=1_7.3字符数组——存放字符数据,一个元素存放一个字符。一、定义charc[10];或intc[10];可存放字符数据,浪费。二、初始化例:charc[8]={‘I’,‘ㄩ’,‘a’,‘m’,‘ㄩ’,‘b’,‘o’,‘y’};说明:1.初值个数>数组长度——语法错误;2.初值个数<数组长度——其余元素为‘\0’3.初值个数=数组长度——长度可省;如:chara[]={‘B’,‘O’,‘Y’};4.可定义并初始化多维数组。如:chara[2][3]={{‘b’,‘o’,‘y’},{‘d’,‘o’,‘g’}}三、引用例:#include<stdio.h>voidmain(){inti;chara[5]={‘a’,‘ㄩ’,‘h’,‘a’,‘t’};for(i=0;i<5;i++)printf(“%c”,c[i]);printf(“\n”);}运行结果:aㄩhat_四、字符串1.在C中,用字符数组存字符串。2.字符串结束标志‘\0‘\0’—表示字符串到此结束,由‘\0字符串常量—系统自动加一个‘\0’例:“China”,共5个字符,占6个字节,即用无名一维数组存放。3.定义数组长度应大于最大字符串长度——‘\0’4.‘\0’——ASCII码为0的字符,非显示字符——如:printf(“Howdoyoudo?\n”);系统自动加一个‘\0’5.可用字符串常量对字符数组初始化China\0charc[]={“China”};China
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 能源科技投标保密承诺书
- 建筑工程通风合同范本
- 水产仓库管理员招聘协议
- 养殖场环境保护措施
- 工程施工外墙保温合同
- 城市次干道减速带施工协议
- 旅游公司玻璃膜施工合同
- 金融咨询清欠管理办法
- 销售冠军之道计件奖罚实践
- 证券交易合同执行
- 创建老年友善医院资料制度汇编(岗位服务规范-行政后勤服务规范)
- 超声科图像质量评价细则
- 大学生职业素养PPT幻灯片课件(PPT 84页)
- GB∕T 1927.9-2021 无疵小试样木材物理力学性质试验方法 第9部分:抗弯强度测定
- 人教版九年级英语上册复习课件全册
- 打开诗的翅膀(儿童诗创作指导)通用PPT课件
- 小额纳税人证明模板
- 三年泡胖大海
- 物联网与智慧农业.
- 《七律长征》教案
- 市政工程施工安全检查标准评分表
评论
0/150
提交评论