高级语言程序设计15.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高级语言程序设计 及其课程设计 ———— C语言 主讲人:傅守忠(基础教学部) E-Mail:szfu@; shzhfu@ 第十五讲: 字符数组与字符串 上一讲的主要内容 地址传递: 为了子函数直接操作父函数的变量; 递归: 自己调用自己的函数. 把大规模的问题化成小规模的同类问题解决. 字符型数组 它与数值型(整型和实数型)数组完全类似. 由于字符用ASCII码表示的, 与整数通用, 所以字符型数组与整型数组完全等价. 例: char c1[8]; //定义长度为8的空数组 char c2[5]={‘C’,’h’,’i’,’n’,’a’} 等价于 int c2[5]={‘C’,’h’,’i’,’n’,’a’} 或 int c2[5]={67,104,105,110,97} 例 #include stdio.h void main() { char c1[5]={C,h,i,n,a}; int i,c2[5]={67,104,105,110,97}; printf(\nc1做字符串: ); for(i=0;i5;i++) printf(%c,c1[i]); printf(\nc1做整型数组: ); for(i=0;i5;i++) printf(%5d,c1[i]); 例 #include stdio.h void main() { char c[] = {‘“’,‘\’‘,’C‘,’\‘’,‘ ’,‘i’,‘s’,‘ ’,‘v’,‘e’,‘r’,‘y’,‘ ,i,m,p,o,r,t,a,n,t,.,,,,h,e, ,s,a,i,d,., , }; int i,n=i-c1[0]; for(i=0;in;i++) printf(%c,c1[i]); printf(\n); } 字符串 上例显示, 给字符型数组赋值, 额外增加的输入(单引号和逗号)比字符本身多, 且易错. C语言中将由字母、数字字符、专用字符(如!@#等)和转意字符(如\n等)组成的序列叫字符串常量, 用双引号作为其限界符. 例 “China”, “2716381”, “3+2”, ”12.3”, ”am\nare\nis”等. 字符数组的赋值 上例中字符数组的赋值可改为: char c[] = “\”’ C‘ is very important. “, he said.”; 其长度如何去数? 之前: 可以人工数, 也可以定义赋助变量求地址差. C中, 字符串存储变成ASCII-Z串(Z — Zero), 即它在字符串尾部加上ASCII值为0的字符(‘\0’) 字符数组的赋值 如: char c[8] = “China”, s[ ]=“Hi”; 在内存单元的存储分别为 例: #include stdio.h void main() { char c[]=\C is very important.\ he said.; int i=0; while(c[i]!=0) printf(%c,c[i++]); printf(\n\n); } 字符串输出: 用格式控制符”%s”可以直接printf字符串. #include stdio.h void main() { char c[]=\C is very important.\ he said.; printf(“\n%s\n,c); } 字符数组: 这样, 除了初始化可以改为字符串进行外, 字符型数组与整型数组的使用就完全相同了. 包括它同时定义了一个同名的指针变量, 可以通过下标和指针访问某个元素等. 但可以直接给字符型指针变量赋值字符串.如: char *c1; c1=“Hello”; 字符串很长时, 可用\分行, 但\后不能有其它字符(含注释), 下一行要顶头输入(前面的空格等也算字符串的内容). 如 *c=“abcdefg\ hijklmn”; 字符串处理函数: 包含在头文件string.h中, 故需 #include string.h (1) 字符串长度函数 int strlen(char *) 例: n=strlen(c); 返回字符串c的长度(不含尾巴0) (2) 串复制 char * strcpy(char *s1, char *s2); 将s2复值到s1(可视为串的一种赋值.) 字符串处理函数: (3) 字符串连接 char * strcat (char *s1

文档评论(0)

一天一点 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档