C语言 多维、字符数组

上传人:油条 文档编号:26792224 上传时间:2018-01-01 格式:PPT 页数:20 大小:648.50KB
返回 下载 相关 举报
C语言 多维、字符数组_第1页
第1页 / 共20页
C语言 多维、字符数组_第2页
第2页 / 共20页
C语言 多维、字符数组_第3页
第3页 / 共20页
C语言 多维、字符数组_第4页
第4页 / 共20页
C语言 多维、字符数组_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《C语言 多维、字符数组》由会员分享,可在线阅读,更多相关《C语言 多维、字符数组(20页珍藏版)》请在金锄头文库上搜索。

1、第五章 数组 5.2 多维数组 5.3 字符数组,多维数组,引例:一页纸写着两个字符,如何存放这两个字符?一页纸写着三行字符,每行两个字符,如何存放这些字符?有一本书,共四页,每页纸写着三行字符,每行两个字符,如何存放这些字符?,char ch2;char ch32;char ch432;,多维数组(定义),int a2; int a32; int a432;,存储类别 类型名 数组名常量表达式1 常量表达式2 ,先定义,后使用多维数组定义的一般形式:,二维数组(引用),设int a32;,则这个二维数组的6个元素分别为:,数组名行下标列下标 ( 注:下标:整型常量、变量、或表达式),先定义,

2、后使用二维数组元素引用的一般形式:,a00 a01 a10 a11 a20 a21,int a32;(3行2列,6个元素)a00 a01 a10 a11a20 a21,二维数组的元素在内存的存储顺序是:按行存放,如何表示数组a的地址?&a00或者a,二维数组(引用),注: 数组元素的使用方法与同类型的变量相同引用:数组名行下标列下标 (下标:整型常量、变量、或表达式),例:设int a32;,则给数组元素a00赋值1如何实现,输出数组元素a00的值如何实现呢?给每个数组元素输入值如何实现,输出所有数组元素的值如何实现呢? 按矩阵格式输出所有数组元素的值如何实现?,二维数组的初始化,int a3

3、3= 1,2,3,4,5,6,7,8,9;int a33= 1,2,3,4,5,6,7,8,9;int a 3= 1,2,3,4,5,6,7,8,9;int a3= 1,2,3,4,5,9;,int a3= 1,2,3,4,5,6;能写成int a3= 1,2,3,4,5,6;吗?这个数组中共包含几个元素?a12的值是多少?,例:定义一个3*2的二维数组a,数组元素的值由下式给 出,按矩阵的形式输出a。aij=i+j(0=i=2,0=j=1),#includevoid main() int a32, int i,j; for(i=0;i3;i+) for(j=0;j2;j+) aij=i+j;

4、,for(i=0;i3;i+) for(j=0;j2;j+) printf(“%4d”,aij); printf(“n”);,例:计算矩阵A23的转置矩阵AT,#includemain() int a23=1,3,5,2,4,6; int i,j,b32; for(i=0;i2;i+) for(j=0;j3;j+) printf(%5d,aij); bji=aij; printf(n); ,for(i=0;i3;i+) for(j=0;j2;j+) printf(%5d,bij); printf(n); ,aij的值是bji的值,字符数组(数组的应用),C中不使用字符串变量,而使用字符数组来处

5、理字符串。,定义:char 字符数组名常量表达式; char str3;引用:字符数组名下标 str0,str1,str2,#includemain() char c12; int i; c0=H;c1=o;c2=w;c3= ; c4=a;c5=r; c6=e;c7= ; c8=y;c9=o;c10=u;c11=?; for(i=0;i12;i+) printf(%c,ci); printf(n);,printf(“%s”,c);,字符串(数组的应用),初始化: char str5=h,e,l,l,o; char str6=h,e,l,l,o; char str =h,e,l,l,o,0; c

6、har str =hello; char str =hello; char color57=“red”,”yellow”,”green”,”black”,”white”; char color7=“red”,”yellow”,”green”,”black”,”white”; 见书122页,字符数组的输入 char str13;,1、用格式符“%c”逐个输入字符 for(i=0;i=“字符串”中的实际字符串长度加1。3.“字符数组”必须是数组名形式(如str1)。“字符串”可以是一个字符串常量,也可以是已存放字符串的字符数组。,不能将一个字符串常量或字符数组直接赋给一个字符数组,只能使用字符串拷

7、贝函数。str1=str2; str1=hello,格式:strcpy(字符数组名,字符串),拷贝字符串前n个字符的函数,char a10=abc,b5=xyz;strncpy(a,b,2);注意: 只拷贝字符,不拷贝0字符拷贝到目的字符数组,格式:strncpy(字符数组名,字符串,n),字符串连接函数 strcat,char a10=abc,b5=xy;strcat(a,b);作用: 取消“字符数组”中的字符串结束标志0,然后把“字符串”连接到“字符数组”中的字符串后面,并在最后加一个0字符,结果放到“字符数组”中。,格式:strcat(字符数组名,字符串),字符串比较函数 strcmp,strcmp(abc,ab);作用:比较“字符串1”和“字符串2”的大小(从第一个字符开始比 较,碰到第一个不相等的字符,看谁的ASCII码大)。 (1) 如果“字符串1”=“字符串2”,函数值为0; (2) 如果“字符串1”“字符串2”,函数值为正整数; (3) 如果“字符串1”“字符串2”,函数值为负整数。,格式:strcmp(字符串1,字符串2),测字符串长度函数 strlen,char str15=“hello”; printf(“%d”,strlen(str);作用:测数组中字符串长度注意:所测的长度不包含字符串结束符“0”,格式:strlen(字符数组名),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号