Chap5数组讲义.ppt

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对字符数组初始化,可逐个字符赋给数组中各元素。 例如: char c[10]={‘I’,’a’,’m’,’h’,’a’,’p’,’p’,’y’} 5.3.2字符数组的初始化 如果初值个数小于数组长度,则只将这些字符赋给数 组中前面那些元素,其余的元素自动定为空字符。 char c[10]={′c′,′ ′,′p′,′r′,′o′,′g′,′r′,′a′,′m′}; 如果提供的初值个数与预定的数组长度相同,在定义时可以省略数组长度,系统会自动根据初值个数确定数组长度。 char c[]={′I′,′ ′,′a′,′m′,′ ′,′h′,′a′,′p′,′p′,′y′}; 数组c的长度自动定为10。 char diamond[5][5]={{′ ′,′ ′,*′},{′ ′,′*′,′ ′,′*′},{′*′,′ ′,′ ′,′ ′,′*′},{′ ′,′*′,′ ′,′*′},{′ ′,′ ′,′*′}} 定义和初始化一个二维字符数组 5.3.3 字符数组的引用 例: 输出一个字符串。 #include stdio.h void main() { char c[10]={I, ,a,m, ,a, ,b,o,y}; int i; for(i=0;i10;i++) printf(%c,c[i]); printf(\n); } 5.3.4字符串和字符串结束标志 为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”——‘\0’。 字符数组并不要求它的最后一个字符为′\0′,甚至可以不包含′\0′。 例如:char c[5]={′C′,′h′,′i′,′n′,′a′}; 但是由于系统对字符串常量自动加一个′\0′。因此,为了使处理方法一致,在字符数组中也常人为地加上一个′\0′。 例如:char c[6]={′C′,′h′,′i′,′n′,′a′,′\0′}; 例如: 定义字符数组∶ char c[ ] ={“Pascal program”}; 要用一个新的字符串代替原有的字符串”Pascal program” ,从键盘向字符数组输入∶Hello 如果不加′\0′的话,字符数组中的字符如下∶ Hellol program 5.3.5 字符数组的输入输出 字符数组的输入输出可以有两种方法: 逐个字符输入输出。用格式符“%c”输入或输出一个字符。 将整个字符串一次输入或输出。用“%s”格式符,意思是对字符串的输入输出。 char c[]={″China″}; printf(″%s″,c); 例如 在内存中数组c的状态 说明: (1)用“%s”格式符输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名。 (2)如果数组长度大于字符串实际长度,也只输出到遇′\0′结束。 (3)输出字符不包括结束符′\0′。 (4)如果一个字符数组中包含一个以上′\0′,则遇第一个′\0′时输出就结束。 (5)可以用scanf函数输入一个字符串。 如果利用一个scanf函数输入多个字符串,则在输入时以空格分隔。 例如: char strl[5],str2[5],str3[5]; scanf(″%s %s %s″,str1,str2,str3); 输入数据: How are you?  数组中未被赋值的元素 的值自动置′\0′。 分析图中所示的字符数组 用8进制形式输出数组c的起始地址 printf(″%o″,c); printf(″%s″,c); 注意:scanf函数中的输入项如果字符数组名。不要再加地址符,因为在C语言中数组名代表该数组的起始地址。下面写法不对: scanf(″%s″,str); 1. puts函数 其一般形式为: puts (字符数组) 其作用是将一个字符串(以′\0′结束的字符序列)输出到终端。假如已定义str是一个字符数组名,且该数组已被初始化为China。则执行puts(str);其结果是在终端上输出China。 5.3.6 字符串处理函数 用puts函数输出的字符串中可以包含转义字符。例如: char str[]={″China\nBeijing″}; puts(str); 输出结果: China Beijing 在输出时,将字符串 结束标志′\0′ 转换成′\n′, 即输出完字符串后换行。 2. gets函数 其一般形式为:gets(字符数组) 其作用是从终端输入一个字符串到字符数组,并且得到一个函数值。该函数值是字符数组的起始地址。如执行下面的函数: gets(str) 从键盘输入: Computer↙将输入的字符串Computer送给字符

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档