网站大量收购独家精品文档,联系QQ:2885784924

《C语言程序设计(》课件_第5章 数组.pptVIP

《C语言程序设计(》课件_第5章 数组.ppt

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

①形式不同,字符串常量是用双引号引起来的字符序列,字符序列可以为空,也可以是一个或多个字符;而字符常量是用单引号引起来的单个字符;②存储不同,字符串常量要占用(字符串长度+1)个字节;而字符常量占用一个字节空间存放其本身。例如,s是字符常量,值为字母s,在内存保存的是字母s的ASCII码值,占一个字节;而s表示含有一个字母s的字符串,在内存保存的是字母s和空字符\0的ASCII码值,占两个字节。表示空串,在内存中保存的是空字符\0的ASCII码值,占一个字节。表示一个含有一个空格的字符串,在内存中占两个字节;表示空格字符,在内存中占一个字节。注意:对于字符串数组,系统不自动添加结束标志\0,如例5.10。【例5.10】从键盘输入一行字符,存放在字符数组中,然后输出。#defineN80#includestdio.hmain(){charstr[N];inti,j;printf(pleaseenterthecharacters:);for(i=0;(str[i]=getchar())!=‘\n’;i++);/*输入字符序列,当输入 字符为回车时结束*/str[i]=\0;/*添加字符串结束标志*/for(i=0;str[i]!=\0;i++)/*输出字符序列*/printf(%c,str[i]);}2.字符串常量赋给字符数组若在定义字符数组的同时赋初值,则可将字符串常量赋给它。例如,charc[20]={Thegreatwall};习惯上可以省略花括号,上面定义写为:charc[20]=Thegreatwall;数组c在内存中存储的示意图如图。Thegreatwall\0\0\0\0\0\0012345678910111213141516171819说明:①若定义字符数组时完成赋初值,则可以在定义中省略数组的长度。系统会根据所赋字符串常量的实际长度来确定字符数组的长度。如上述定义也可写为:charc[]=Thegreatwall;系统会自动确定数组c的长度为15。②字符串常量末尾处有系统自动加的结束标志\0,所以要求数组长度比字符串长度至少大1。例如,charc[14]=Thegreatwall;这条语句中数组c不能满足字符串长度。③除了数组定义时可以将字符串直接付给字符数组外,其它时刻只能对元素进行赋值。例如,不能用语句“c=string;”对字符数组c赋值。【例5.11】写出程序结果,并考虑原因。#includestdio.hmain(){charstr1[]=Thisisastring;charstr2[]={T,h,i,s,,i,s,,a,,s,t,r,i, n,g,\0};charstr3[]={T,h,i,s,,i,s,,a,,s,t,r,i, n,g};inti;for(i=0;str1[i]!=\0i20;i++)printf(%c,str1[i]);printf(\nlength:%3d\n,i);for(i=0;str2[i]!=\0i20;i++)printf(%c,str2[i]);printf(\nlength:%3d\n,i);for(i=0;str3[i]!=\0i20;i++)printf(%c,str3[i]);printf(\nlength:%3d\n,i);}程序运行结果为:Thisisastringlength:16Thisisastringlength:16ThisisastringΦ???length:20(注意这里Φ???是四个未知字符造成的)charstr1[]=Thisisastring;和charstr2[]={T,h,i,s,,

文档评论(0)

kd8w + 关注
实名认证
文档贡献者

kd8w

1亿VIP精品文档

相关文档