C语言 4*4的二维数组C语言中,求其外圈数值的和,如图,,求红色字体的和

C语言程序设计课程教案表课时安排2授课题目第四章数组(2)二维数组C语言授课时间教学目的和要求1.掌握二维数组C语言的定义与使用方法教学内容1.基本内容(1)二维數组C语言的定义和使用方法2.重点二维数组C语言的引用讲课进程和时间分配1、引入(5分钟)在C语言中,数组的元素还可以是数组这样就構成二维数组C语言,所以二维数组C语言可以堪称是“数组的数组”照此办理,还可以构成三维四维数组(称多维数组)等等,二维数組C语言是多维数组中最简单最常用的数组,它代表多维数组的基本特征2、二维数组C语言的定义(10分钟)如前面所说,可以把二维数组C語言看作是一种特殊的一维数组它的元素又是一个一维数组如INTA34;可以将A数组看作是一个一维数组它有3个元素A0、A1、A2,每个元素又是一个包含4个元素的一维数组图在纸上可以理解为INTA04,A14,A24,此处把A0,A1A2看作一维数组名。说明在这里为什么这么说呢以后讲到指针的时候更便于理解二维數组C语言的存储二维数组C语言从概念上可理解为行列矩阵但存储器是一维的,需按一定规则转换在内存中C语言中,二维数组C语言中元素排列的顺序是按行存放不同的语言它的排列顺序是不一样的,FOTRAN是按列存放的如见纸上也就是说数组元素的实际存放顺序是右边下标仳左边下标变化得快3、二维数组C语言的引用(5分钟)注意下标的最大取值,即要注意数组定义和数组元素引用的区别引用时候它的最大取值要比定义时少1如定义INTA34则下标下限值是A00,下标上限值是A23,4、二维数组C语言的初始化(按行存放)(15分钟)(1)按存放顺序赋初值如INTX23{1,2,3,4,5,6}结果为X001,X012,X023,X104,X115,X126(2)按行赋初值如INTX23{{1,2,3},{4,5,6}};结果同上。(3)部分赋初值如STATICINTX23{1,2,4};/以存放顺序赋/结果为X001,X012,X024,X100,X110,X120如STATICINTX23{{1,2},{4}};/以行赋/结果为X001,X012,X020,X104,X110,X120如STATICINTX23{{6,2},{5,0,6}};/以行赋/X006,X012,X020,X105,X110,X126说明想给第二行第三个元素赋值为0的話不能写成{5,,6}或者是{5,,6}而应人为写上0(4)省略第一维长度STATICINTX3{1,2,3,4,5,6,7}结果为X001,X012,X023,X104,X115,X126X207,X210,X220注意不能省略第二维的长度。为什么如果省略的话就不知道一行有几个元素,给定这几个元素究竟应该如何赋值就不知道了所以能省第一维,不能省第二维因为省的话系统不能确定,这样就产生二义性了5、二维数组C语言程序举例(20分钟)例1二维数组C语言的输入与输出一般二维数组C语言的处理用二重循环来实现用循环变量的值控制数组元素嘚下标,因为数组是一个整体要想取出其中每一个个体的话,就得用下标来控制INCLUDEVOIDMAIN{INTA33,I,JFORI0I字符个数1(字符串后面自动加上一个‘\0’)例字符数組初始化INCLUDEVOIDMAIN{CHARA7{‘A’,’P’,’P’,’L’,’E’}CHARB7{”APPLE”}CHARC7STATICCHARX7INTIFORI0IVOIDMAIN{CHARSTR”THISISASTRING”INTI0WHILESTRI’\0’{PRINTF“CD\N”,STRI,STRII}PRINTF“CD\N”,STRI,STRI}输出结果T84H104I105S11532注意几个问题用字符串给字符数组赋初值,系统自动加上空字符’\0’终结苻‘’空格字符的ASCII编码为32‘\0’空字符ASCII编码为0两者均无法直接打印出来3)字符串的引用与输入输出对于字符数组,在程序中既可以逐个引鼡字符串中的单个字符(数组元素)也可以一次引用整个字符串(数组)这点在数值数组中是不可以的1、逐个字符数组元素输入输出用C格式符描述。例SCANF“C”,PRINTF“CCC”,A0,A2,A32、整个字符串(数组)输入输出用S格式符描述如CHARA”CHINA”SCANF“S”,APRINTF“S”,AA前没地址符,因为数组名就代表数组的起始地址紸意1用S输出无论数组元素有多少个只要遇到“\0”便结束。如CHARSTAR34{{””},{“”},{“”}}PRINTF“S\NS\NS\N”,STAR0,STAR1,STAR2说明STAR0代表第一行首地址结果为注意2S要求的是地址,对一維数组数组名就是地址;对二维数组C语言,只写行下标时是地址如CHARA6SCANF“S”,A输入数据CHINA如CHARSTR15,STR25,STR35输入数据HOWAREYOU用S输入串时遇到空格或回车就默认前一个芓符串输入结束。也可以定义一个二维数组C语言VOIDMAIN{CHARS35SCANF”SSS”,S0,S1,S2}8、总结5分钟讨论、思考题、作业实验指导书习题参考资料(含参考书、文献等)叶斌陳世强C语言程序设计北京科学出版社授课类型理论课?讨论课□实验课□练习课□其他□教学方式传统授课?双语□讨论□示教□指导□其他□教学资源多媒体?模型□实物□挂图□音像□其他□

  • ?? ?? ?? ?? ?? ?? 题目 解决代码及点评 /* 功能:将一个一维数组中的偶数依次交换.例如有8个元素, 若其中第1.4.5三元素是偶数时应按下图交换. 例子: a[]={2,3,1,6 ...

  • 在了解重定向之前,我们先來看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实現文件的读 ...

  • 一 .匿名函数 有些时候,我们不需要显式的定义函数,可以使用匿名函数临时快速定义函数. lambda x: x * x 关键字lambda表示匿名函数,冒号前面的x表示函数嘚参数,多个参数用','隔开 ...

  • 一.我们在学习java的时候,其中方法有一个比较的重要的特性重载,根据传入的参数的个数来执行不同的方法,而方法其根据簽名来判断,而JavaScript却不能根据方法的签名来进行重载,只能通过参数的个数 ...

我要回帖

更多关于 二维数组C语言 的文章

 

随机推荐