当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

长江大学:《C语言程序设计》PPT课件_第七章 数组(2/2)

资源类别:文库,文档格式:PPT,文档页数:12,文件大小:104KB,团购合买
点击下载完整版文档(PPT)

第7章第3节 §73字符数组 存放字符的数组;每一个元素存放一个字符 一.字符数组的定义 维字符数组char数组名常量表达式 二维字符数组char数组名常量表达式常量表达式 例: char a12 al0|-I;al=t';a2|‘‘;al3l=¨i’;a|4|=sa|5=‘;a|6}=a’; a[7]=‘’;a8|=“b;a19}‘0‘;a10=0’;a[1l=“k’; 00 a0] all a[2 a[10 a[l1

第7章第3节 §7.3 字 符 数 组 ——存放字符的数组;每一个元素存放一个字符 一. 字符数组的定义 一维字符数组 二维字符数组 例:char a[12]; a[0]=‘I’ ; a[1]=‘t’; a[2]=‘ ‘ ; a[3]=‘i’; a[4]=‘s’ a[5]=‘ ‘; a[6]=‘a’; a[7]=‘ ’ ; a[8]=‘b’; a[9]=‘o ‘ ; a[10]=‘o’; a[11]=‘k’; I t i s a b o o k a[0] a[1] a[2] ...... a[10] a[11] char 数组名[常量表达式]; char 数组名[常量表达式] [常量表达式];

第7章第3节 注:∵字符型与整型通用 等价 char a 101 int a 10 二.字符数组的初始化 「与数值型数组相似」 一维: char al12}={T’,“t',’,"i,'s’,’,a’,“"b’,0’,“o’,"0,“k} 二维; char al313}={(’,“,*,‘’,',“*’,,*’,’ 等价 char a|3}={“,“’, 字符数组的引用 与数值型数组相似,只能引用元素(单个字符),不能 引用整个数组 借助于循环

二. 字符数组的初始化 第7章第3节 与数值型数组相似 一维: 二维: char a[12]={‘I’, ‘t’, ‘ ’, ‘i’, ‘s’, ‘ ’, ‘a’ , ‘b’, ‘o’, ‘o’, ‘o’, ‘k’ } char a[3][3]={{‘ ’, ‘ ’, ‘* ’, ‘ ’, ‘*’, ‘* ’, ‘*’ , ‘*’, ‘*’} char a[][3]={ ‘ ’, ‘ ’, ‘* ’, ‘ ’, ‘*’, ‘* ’, ‘*’ , ‘*’, ‘*’} 等价 三. 字符数组的引用 ——与数值型数组相似,只能引用元素(单个字符),不能 引用整个数组 借助于循环 注:∵字符型与整型通用 ∴ char a[10]; int a[10]; 等价

第7章第3节 例77输出一个钻石图形 main (0 har diamond[5上={{“’,,*”},{’,“*”,,*”,{*,’,,,*》}, ,“ } Int 1,J; for(i=0;i<5;i++) i for(j=0;j<5;j++) printf( diamondoid: printf("n”y); 注意其作用

第7章第3节 例7.7 输出一个钻石图形 main() { char diamond[][5]={{‘ ’,‘ ’,‘*’},{‘ ’,‘*’,‘ ’,‘*’},{‘*’,‘ ’,‘ ’,‘ ’,‘*’}, {‘ ’,‘*’,‘ ’,‘*’}, {‘ ’,‘ ’,‘*’} }; int i,j; for(i=0;i<5;i++) { for(j=0;j<5;j++) printf(“%c”,diamond[i][j]); printf(“\n”); } } * * * * * * * * 注意其作用

第7章第3节 四.字符串和字符数串结束标志 一二个常}→表学 字符 字符串的持点:最后一个字符为 →字符串结束标志 char al13}={I,“t',,“i,s,,a’,‘’,"b,0’,‘0,“k,”0}; char a[13={“ 'it is a b0ok”}; 等价 char al={“ it is a b0ok”} 最后一个元素赋为 0 char a13}=“ 'it is a book” char a=“ it is a book”; 一最后一个元素自动加 小结:1.用字符数组表示字符串。如定义时指定长度,则数组长度>字符 串长度; 2数组中放的是字符还是字符串,了为0则为字符串 关键看最后一个元素 不为“0则只能是若干个字 符

四. 字符串和字符数串结束标志 第7章第3节 字符串 多个字符 用字符数组表示字符串 字符串的持点: 最后一个字符为 ‘\0’ 字符串结束标志 char a[13]={‘I’, ‘t’, ‘ ’, ‘i’, ‘s’, ‘ ’, ‘a’ , ‘ ’, ‘b’, ‘o’, ‘o’, ‘k’, ’\0’}; char a[13]={“it is a book”}; char a[13]= “it is a book”; char a[]={“it is a book”}; char a[]= “it is a book”; 等 价 最后一个元素自动加 ‘\0’ 小结: 1 . 用字符数组表示字符串。如定义时指定长度, 则数组长度>字符 串长度; 2. 数组中放的是字符还是字符串, 关键看最后一个元素 为‘\0’ 则为字符串 不为‘\0’ 则只能是若干个字 符 字符数组 多个元素(字符) 最后一个元素赋为 ‘\0’

第7章第3节 五、字符数组的输入输出 1.对字符数组中的每一个元素逐一输入、输出。采 两种方法用循环实现 2.以字符串的形式对整个字符数组输入、输出。 1.逐个输入、输出单个字符—与引用数组元素相同 例:输入一段文字(以回车结束),转换成大写输出。1720c # include“ stdio.h” maino char ch(200]; int L,; for(i=0;(ch[i= getchar(}=“Ⅶn’;i++) if(chi>=a&&chi<=z) chi=ch i-32; ior(j=0:j=1-1:j++) putchar(ch jD; putchar(n’);

五. 字符数组的输入输出 第7章第3节 两种方法 1. 对字符数组中的每一个元素,逐一输入、输出。采 用循环实现。 2. 以字符串的形式,对整个字符数组输入、输出。 1. 逐个输入、输出单个字符——与引用数组元素相同 例:输入一段文字(以回车结束),转换成大写输出。 #include“stdio.h” main() {char ch[200]; int i,j; for(i=0;(ch[i]=getchar())!=‘\n’;i++) if (ch[i]>=‘a’&&ch[i]<=‘z’) ch[i]=ch[i]-32; for(j=0;j<=i-1;j++) putchar(ch[j]); putchar(‘\n’); } lt7-20.c

第7章第3节 2.对整个字符串输入、输出—采用 scanf(“%s”,…)、 printf(“s”,) 1)输出: printf(“%s,数组名) 例1: char al={“ t is a book”y}; printf((“%s”,a); 注意:用数组名 或: char a[13}={T,t',,“i,s,“’,a',‘’,"h’0,o',k’,"0'}; printf((“%os”,a); 注意:用数组名 结果: It is a book 例2 char al=,h';i',”0,”n,’a',”0”,”0}; print(“%s”, 注意:用数组名 结果:chi 输出至第一个“V0结束

第7章第3节 2. 对整个字符串输入、输出——采用scanf(“%s”,....)、printf(“%s”,...) 1)输出: 结果:It is a book 例2 char a[]={’c’, ’h’,’i’, ’\0’, ’n’, ’a’, ’\0’, ’\0’}; printf(“%s”, a); 或: char a[13]={‘I’, ‘t’, ‘ ’, ‘i’, ‘s’, ‘ ’, ‘a’ , ‘ ’, ‘b’, ‘o’, ‘o’, ‘k’, ’\0’}; printf(“%s”, a); 例1: char a[]={“It is a book”}; printf(“%s”, a); 注意:用数组名 结果:chi 输出至第一个‘\0’结束 printf(“%s”,数组名) 注意:用数组名 注意:用数组名

第7章第3节 2输入: scanf(“%s”,数组名) 没有&符号 注意:%格式输入时,遇“回车”,“空格”键,认为输入结束 例: char a6; scanf(“%s”,a); 输入: china 输入不能超过5个字符 a0aa2]a|3a|4al5」 c'h'" 自动加“0 例: char a20; scanf(colos ga) 输入: Howare you? 遇“空格”认为输入结 a[2]a[3]…a19 東 w|“V0 自动加“10

第7章第3节 2)输入: scanf(“%s” , 数组名) 没有&符号 注意:%s格式输入时,遇“回车”,“空格”键,认为输入结束 例: char a[6]; scanf(“%s”,a); 输入:china 输入不能超过5个字符 a[0] a[1] a[2] a[3] a[4] a[5] ‘c’ ‘h’ ‘i’ ‘n ‘a’ ‘\0’ 自动加‘\0’ 例: char a[20]; scanf(“%s”,a); 输入:How are you? ‘H’ ‘o’ ‘w’ ‘\0’ a[0] a[1] a[2] a[3] ... a[19] 遇“空格”认为输入结 束 自动加‘\0’

第7章第3节 六.字符串处理函数 1.字符串输出函数put() puts(字符串/字符数组名) 程序开头用“文 件包含”命令: 2.字符串输入函数gets() # include“ stdio.h” gets(字符数组名) 注:以回车键作为输入结束,故字符串中可含有空格 3字符串连接函数srea( stra(字符数组1,字符串或字符数组2) 前者+后前—·放入前者中 程序开头用“文件 包含”命令: 4.字符串拷贝函数 strcpy( # include“ string.h” strcpy(字符数组名1字符串或字符数组名2) 后者内容替代前者内容。常用于字符串赋值

第7章第3节 六. 字符串处理函数 1. 字符串输出函数 puts( ) puts(字符串/字符数组名) 2. 字符串输入函数 gets( ) gets(字符数组名) 注: 以回车键作为输入结束,故字符串中可含有空格 程序开头用“文 件包含”命令: #include“stdio.h” 3. 字符串连接函数 strcat( ) strcat(字符数组1,字符串或字符数组2) 4. 字符串拷贝函数 strcpy( ) strcpy(字符数组名1,字符串或字符数组名2) 后者内容替代前者内容。常用于字符串赋值 前者+后前 放入前者中 程序开头用“文件 包含”命令: #include“string.h

第7章第3节 5.字符串比较函数 strcmp() strcmp(字符串1或字符数组名1,字符串2或字符数组名2) 规则:1)从左至右,逐个字符比较,直到出现不同字符或“0为止 2)结果:第一个不相同字符的ASCⅡ码之差 串1=串2结果=0 串1>串2结果>0 串1<串2结果<0 程序开头用 如: strcmp“chin,; chain)- “文件包含 结果为:106597=8令 6.测字符串长度函数 strlen( # include“st strlen(字符串或字符数组名) Ing. 求字符串的长度(不包括“10 7. strlwr(字符串) 将字符串中的大写字母变成小定字母 8. struer(字符串) 将字符串中的小写字母变成大定字母

第7章第3节 5. 字符串比较函数 strcmp( ) strcmp(字符串1或字符数组名1,字符串2或字符数组名2 ) 规则:1)从左至右,逐个字符比较,直到出现不同字符或‘\0’为止 2)结果: 第一个不相同字符的ASCⅡ码之差 串1=串2 结果=0 串1>串2 结果>0 串1’a’ ∴ 结果为:105-97=8 6. 测字符串长度函数 strlen( ) strlen(字符串或字符数组名) 求字符串的长度(不包括‘\0’) 7. strlwr(字符串) 将字符串中的大写字母变成小定字母 8. strupr(字符串) 将字符串中的小写字母变成大定字母 程序开头用 “文件包含” 命令: #include“st ring.h

第7章第3节 七、字符数组应用举例 P1427.13编写一个程序,将两个字符串连接起来,不用 Streat函数。 解 ABICIDI1O # include” stdio.hs FGHI\O maint fint i, k; char sl201, s2 101; printf((“ input strings:Ⅶn”); gets(s1); printf(“ input stringS2:in”) gets(s2); for(i=0; sll!=10; i++); kEi: for(i=0;s2[i!=“03,;i+) slk+i=s2i; 为什么这样做 1k+i=“0 puts(s1);

七. 字符数组应用举例 P142 7.13 编写一个程序, 将两个字符串连接起来,不用strcat函数。 第7章第3节 A B C D \0 E F G H \0 # include ”stdio.h” main() {int i,k; char s1[20],s2[10]; printf(“input string s1: \n”); gets(s1); printf(“input string s2: \n”); gets(s2); for (i=0; s1[i]!=‘\0’;i++) ; k=i; for (i=0; s2[i]!=‘\0’;i++) s1[k+i]=s2[i]; s1[k+i]=‘\0’; puts(s1); } s1 s2 为什么这样做? 解:

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共12页,试读已结束,阅读完整版请下载
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有