维数组的定义及使用

上传人:jian****019 文档编号:245283515 上传时间:2024-10-08 格式:PPT 页数:20 大小:252.99KB
返回 下载 相关 举报
维数组的定义及使用_第1页
第1页 / 共20页
维数组的定义及使用_第2页
第2页 / 共20页
维数组的定义及使用_第3页
第3页 / 共20页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第十一讲 二维数组的定义和引用,一、二维数组的定义,定义二维数组的一般形式:,C语言程序设计课件,C,语,言,程,序,设,计,课,件,类型说明符数组名,常量表达式1,常量表达式2,决定了数组的类型,命名规则同简单变量和一维数组,注意:数组中数组元素的个数为:,常量表达式1,常量表达式2,行下标,列下标,C语言程序设计课件,C,语,言,程,序,设,计,课,件,如:,int,a,34;,定义了包含有,12,个,整型,数组元素的二维数组,a,,在内存中,分布如下:,a,0,0,a,0,1,a,0,2,a,1,0,a,1,1,a,1,2,a,2,0,a,2,1,a,2,2,a,0,3,a,1,3,a,2,3,二、二维数组的引用,引用格式:,数组名,行下标列下标,注意:,1、行下标、列下标均从0开始,到定义的下标值减,一结束。,2、,不能,写成,数组名,行下标,列下标,(1) 分行给二维数组赋值,(2) 将所有数据写在一个大括弧中,按数组排列顺序,进行赋值。,(3) 对部分元素赋值,最直观,最合理,C语言程序设计课件,C,语,言,程,序,设,计,课,件,三、二维数组的初始化,int a34=,1,2,3,4,5,6,7,8,9,10,11,12,;,int a34=1,2,3,4,5,6,7,8,9,10,11,12;,int a34=,1,5,9,;,a,0,0,a,0,1,a,0,2,a,1,0,a,1,1,a,1,2,a,2,0,a,2,1,a,2,2,a,0,3,a,1,3,a,2,3,1,2,3,4,5,6,7,8,9,10,11,12,a,0,0,a,0,1,a,0,2,a,1,0,a,1,1,a,1,2,a,2,0,a,2,1,a,2,2,a,0,3,a,1,3,a,2,3,1,0,0,0,5,0,0,0,9,0,0,0,C语言程序设计课件,C,语,言,程,序,设,计,课,件,四、二维数组的应用举例,1、将一个矩阵进行转置,1 2 3,4 5 6,4,5,3 6,定义数组a,int a23;并将初始矩阵赋给a中元素,a,0,0,a,0,1,a,0,2,a,1,0,a,1,1,a,1,2,1,2,3,4,5,6,b,0,0,b,1,0,b,2,0,b,0,1,b,1,1,b,2,1,定义数组b,int b32;用来存放转置后的矩阵,C语言程序设计课件,C,语,言,程,序,设,计,课,件,数组a:,行下标,0,0,0,1,1,1,列下标,0,1,2,0,1,2,数组b:,行下标,0,0,0,1,1,1,列下标,0,1,2,0,1,2,当,i=0,时,j从,0,变化到,2,;当,i=1,时,j从,0,变化到,2,;,for (i=0;i=1;i+),for (j=0;j=2;j+),b,j,i,=a,i,j,;,定义变量,i,j,分别表示a的,行下标,和,列下标,,,aij=bji,C语言程序设计课件,C,语,言,程,序,设,计,课,件,编写程序:,main(),int a23=,1,2,3,4,5,6,;,int b32,i,j;,printf(“array a:n”);,for(i=0;i=1;i+),for(j=0;j=2;j+),printf(“%5d”,aij);,bji=aij;,printf(“n”);,printf(“array b:n”);,for (i=0;i=2;i+),for (j=0;jmax,真,假,max=aij,row=i,colum=j,输出,:max和row,colum,#include ,main(), int a34=,1,2,3,4, 9,8,7,6, -10,10,-5,2;,int i,j,row=0,colum=0,max;,max=a00;,for(i=0;i=2;i+),for(j=0;jmax), max=aij;,row=i;,colum=j;,printf(max=%d,row=%d,colum=%dn,max,row,colum);,C语言程序设计课件,C,语,言,程,序,设,计,课,件,五、字符数组和字符串,1、字符数组,(1)定义,(2)字符数组的初始化,逐个字符赋值,char ch5=H,e,l,l,o;,用字符串常量,char ch6=“Hello”;,例 char c10, ch34;,(3)字符数组的引用,C语言程序设计课件,C,语,言,程,序,设,计,课,件,例,char fruit7=“Apple”,”Orange”,”Grape”,”Pear”,”Peach”;,二维字符数组初始化,fruit0,fruit1,fruit2,fruit3,fruit4,A,p,p,l,e,0,0,O,r,a,n,g,e,0,G,r,a,p,e,0,0,P,e,a,r,0,0,0,P,e,a,c,h,0,0,C语言程序设计课件,C,语,言,程,序,设,计,课,件,例,输出一个字符串,#include ,main(),char c10=I, ,a,m, ,a, ,b,o,y;,int i;,for(i=0;i10;i+),printf(%c,ci);,printf(n);,I,a,m,a,b,o,y,0,1,2,3,4,5,6,7,8,9,C语言程序设计课件,C,语,言,程,序,设,计,课,件,例 “hello”共5个字符,在内存占6个字节 字符串长度5,h e l l o 0,104 101 108 108 111 0,内存存放字符ASCII码,2、字符串,(1)字符串及其结束标志,(2)无字符串变量,用字符数组处理字符串,(3)字符串结束标志,:,C语言程序设计课件,C,语,言,程,序,设,计,课,件,例 main( ), char a5=H,e,l,l,o;,printf(“%s”,a);,例 main( ), char a =“Hello”;,printf(“%s”,a);,结果:Hello#-=*,h e l l o,0,2,3,1,4,结果:Hello,用“%s”输出时,遇0结束,C语言程序设计课件,C,语,言,程,序,设,计,课,件,main(), char a=h,e,l,0,l,o,0;,printf(%s,a);,例,输出:hel,h e l 0 l o 0,数组中有多个0时,遇第一个结束,C语言程序设计课件,C,语,言,程,序,设,计,课,件,1、字符串输出函数puts,格式:puts(,字符数组),功能:向显示器输出字符串(输出完,换行),说明:字符数组必须以0结束,2、字符串输入函数gets,格式:gets(,字符数组),功能:从键盘输入一以回车结束的字符串放入字符数组,中,并自动加0,说明:输入串长度应小于字符数组维数,例 #include ,main( ),char string80;,printf(“Input a string:”);,gets(string); puts(string);,输入: How are you? 输出: How are you?,C语言程序设计课件,C,语,言,程,序,设,计,课,件,3、字符串连接函数strcat,格式:strcat(,字符数组1,字符数组2),功能:把字符数组2连到字符数组1后面,返值:返回字符数组1的首地址,说明:,字符数组1必须足够大,连接前,两串均以0结束;连接后,串1的0取消,新串最后加0,4、字符串拷贝函数strcpy,格式:strcpy(,字符数组1,字符串2),功能:将字符串2,拷贝到字符数组1中去,返值:返回字符数组1的首地址,说明:,字符数组1必须足够大,拷贝时0一同拷贝,不能使用赋值语句为一个字符数组赋值,例 char str120,str220;,str1=“Hello!”; str2=str1 ;(,),C语言程序设计课件,C,语,言,程,序,设,计,课,件,5、字符串比较函数strcmp,格式:strcmp(,字符串1,字符串2),功能:比较两个字符串,比较规则:对两串从左向右逐个字符比较(ASCII码),,直到遇到不同字符或0为止,返值:返回int型整数。,a. 若字符串1 字符串2, 返回正整数,c. 若字符串1= 字符串2, 返回零,说明:字符串比较不能用“=”,必须用strcmp,6、字符串长度函数strlen,格式:strlen(,字符数组),功能:计算字符串长度,返值:返回字符串实际长度,不包括0在内,C语言程序设计课件,C,语,言,程,序,设,计,课,件,例 对于以下字符串,strlen(s),的值为:,(1)char s10=A,0,B,C,0,D;,(2)char s =“tv0willn”;,答案:1 3,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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


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

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


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