C语言程序设计教程电子教案.ppt

上传人:za****8 文档编号:13189326 上传时间:2020-06-06 格式:PPT 页数:34 大小:201.96KB
返回 下载 相关 举报
C语言程序设计教程电子教案.ppt_第1页
第1页 / 共34页
C语言程序设计教程电子教案.ppt_第2页
第2页 / 共34页
C语言程序设计教程电子教案.ppt_第3页
第3页 / 共34页
点击查看更多>>
资源描述
为了解决比较复杂的问题,本章介绍C语言提供的一种最简单的构造类型数组。6.11维数组的定义和引用6.22维数组的定义和引用6.3字符数组与字符串Return,第6章数组,6.11维数组的定义和引用,6.1.11维数组的定义6.1.21维数组元素的引用6.1.31维数组元素的初始化6.1.41维数组应用举例,Return,6.1.1维数组的定义,一维数组的定义inta5;|连续的单元个数数组名(要满足变量的定义),/*ex58_1.c一维数组的定义和赋值。main()inti;inta10;for(i=0;i10;i+)ai=i;for(i=0;i10;i+)printf(%2d,i);getch();运行结果:0123456789,演示,/ex59.c一维数组各元素赋值,输出。main()inta10,i;for(i=0;i10;i+)ai=i+1;/*给各元素赋值*/for(i=0;i10;i+)ai*=10;/*给各元素赋值*/for(i=0;i|a10|a11|a12|-|-|-|示意图|a00|a01|a02|-|a10|a11|a12|内存存放格式(按行存放),6.2.12维数组的定义,/*ex60_3.cmain()inti,j;staticinta23=1,2,3,4,5,6;/定义并赋值for(i=0;i2;i+)for(j=0;j3;j+)printf(%2d,aij);printf(n);getch();运行结果:123456,演示,2维数组的定义方式如下:数据类型数组名行常量表达式列常量表达式,数组名2行常量表达式2列常量表达式2;1数组元素在内存中的排列顺序为“按行存放”,即先顺序存放第一行的元素,再存放第二行,以此类推。2.设有一个m*n的数组x,则第i行第j列的元素xij在数组中的位置为:i*n+j(注意:行号、列号均从0开始计数)。,3可以把2维数组看作是一种特殊的1维数组:它的元素又是一个1维数组。,Return,矩阵加法:|12|78|00|a|34|+b|910|=c|00|56|1112|00|main()/ex60_4.cstaticinta32=1,2,3,4,5,6;staticintb32=7,8,9,10,11,12;staticintc32=0;inti,j,k;for(i=0;i3;i+)for(j=0;j2;j+)cij+=aij+bij;for(i=0;i3;i+)for(j=0;j2;j+)printf(%5d,cij);printf(n);getchar();81012141618,演示,6.2.22维数组元素的引用,引用2维数组元素的形式为:数组名行下标表达式列下标表达式1“行下标表达式”和“列下标表达式”,都应是整型表达式或符号常量。2“行下标表达式”和“列下标表达式”的值,都应在已定义数组大小的范围内。假设有数组x34,则可用的行下标范围为02,列下标范围为03。3对基本数据类型的变量所能进行的操作,也都适合于相同数据类型的2维数组元素。,Return,6.2.32维数组元素的初始化,1按行赋初值数据类型数组名行常量表达式列常量表达式第0行初值表,第1行初值表,最后1行初值表;赋值规则:将“第0行初值表”中的数据,依次赋给第0行中各元素;将“第1行初值表”中的数据,依次赋给第1行各元素;以此类推。2按2维数组在内存中的排列顺序给各元素赋初值数据类型数组名行常量表达式列常量表达式初值表;赋值规则:按2维数组在内存中的排列顺序,将初值表中的数据,依次赋给各元素。如果对全部元素都赋初值,则“行数”可以省略。注意:只能省略“行数”。,Return,6.3字符数组与字符串,6.3.1字符数组的逐个字符操作6.3.2字符数组的整体操作6.3.3常用的字符串处理函数,Return,1字符数组的定义1维字符数组,用于存储和处理1个字符串,其定义格式与1维数值数组一样。2维字符数组,用于同时存储和处理多个字符串,其定义格式与2维数值数组一样。2字符数组的初始化字符数组的初始化,可以通过为每个数组元素指定初值字符来实现。3字符数组的引用字符数组的逐个字符引用,与引用数值数组元素类似。,(1)字符数组的输入除了可以通过初始化使字符数组各元素得到初值外,也可以使用getchar()或scanf()函数输入字符。例如:charstr10;for(i=0;i10;i+)scanf(%c,/*清除键盘输入缓冲区*/,(2)字符数组的输出字符数组的输出,可以用putchar()或printf()函数。例如:charstr10=clanguage;for(i=0;i10;i+)printf(%c,stri);printf(n);注意:逐个字符输入、输出时,要指出元素的下标,而且使用“%c”格式符。另外,从键盘上输入字符时,无需输入字符的定界符单引号;输出时,系统也不输出字符的定界符。Return,输出菱形图:*,6.3.1字符数组的逐个字符操作,/*ex60_8.cmain()inti,j;staticchara77=,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,;for(i=0;i7;i+)for(j=0;j7;j+)printf(%c,aij);printf(n);getch();,演示,6.3.2字符数组的整体操作,案例6.6字符数组的整体输入与输出。/*文件名:eex10.c*/*功能:将2维字符数组进行初始化,并在屏幕上输出*/main()inti;charname59=张三山,李四季,王五魁,刘六顺,赵七巧;for(i=0;i0)strcpy(str,c0);/*str0)strcpy(str,c2);printf(max=%sn,str);getchar();max=ABCDYA,演示,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!