清华大学 李永教授课件 (c语言课件) 第四章课件.ppt

清华大学 李永教授课件 (c语言课件) 第四章课件.ppt

  1. 1、本文档共109页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
清华大学 李永教授课件 (c语言课件) 第四章课件

一维数组的元素在内存中依次连续存储 例,定义数组 int a[2][3],数组元素为 a[0][0] a[0][1] a[0][2] a[1][0] a[1][1] a[1][2] 则可有如下操作: a[0][2]=1; a[i+j]=i+j;(i,j为整型变量) 二维数组与一维数组的变换 可以用一维数组描述二维数组 char a[2][3]; char b[6]; 所谓字符数组,就是数组元素都为字符类型数据的数组。 可以存放若干个字符,也可以存放字符串。 小 结 数组是程序设计的常用数据结构,字符串(字符数组)在现代程序中也用得相当普遍,应掌握它们的意义和用法。 数组(一维和二维,多维)名、数组元素的概念。一维数组常与一重循环配合、二维数组常与二重循环配合,对数组元素依次进行处理。 数组必须先定义后使用,数组的初始化方法。 数组元素在内存中的存储顺序。 数据排序算法。(冒泡排序法) 字符串的特点(作为字符数组处理、最后一字节加\0)。 字符串处理函数的应用。 计算字符串长度函数strlen 函数原型: unsigned int strlen(const char *str); 函数功能: 求出字符串或字符数组str中实际字符的个数(不包括结束标志’\0’)。 例如: static char str[10]={China}; printf(%d\n,strlen(str)); 输出结果为:5 (不是10,也不是6) 字符串比较函数strcmp 函数原型: int strcmp(const char *s1, const char *s2); 函数功能: 从左至右逐个比较两个字符串s1和s2中的各字符(根据字符的ASCII码值的大小进行比较),直到出现不同字符或遇到结束标记为止。字符串s1等于字符串s2,函数返回值为0;字符串s1大于字符串s2,函数返回值为正整数;字符串s1小于字符串s2,函数返回值为负整数。 例,strcmp(“d”,“abc”); /*结果为正整数*/ strcmp(“dog”,“door”); /*结果为负整数*/ 例【4-14】比较用户输入的字符串是否为表示同意的yes(用户输入不区分大小写)。 分析: 1)不区分大小写比较两个字符串,首先应将两个字符串全部都转换为大写字母或小写字母。 2)要将一个字符串的全部字符转换为大(小)写字母,可调用转换函数(strupr函数)。也可直接转换,直接转换是根据字母的ASCII码来实现的。例如,‘A’+32=‘a’。 strupr的函数原型:char *strupr(char *); 其功能是把将字符串中的字母转换成大写。其中,upr是uppercase(大写)的缩写。 strlwr的函数原型:char *strlwr(char *);其中lwr是lowercase(小写)的缩写。 其功能是将字符串中的大写字母转换成小写字母。 #include stdio.h #include string.h void main() { char s1[5],s2[]=yes; strupr(s2); /*调用toupper函数系统数据字符串转换为大写字母*/ printf(\t请输入您的意见:\n); gets(s1); strupr(s1); /*调用toupper函数把用户输入字符串转换为大写字母*/ if(strcmp(s1,s2)!=0) printf(用户输入了其它意见。\n); else printf(用户同意。\n); } 例【4-15】用户从键盘输入三个语句,句中单词之间以一个空格分开,输入回车表示语句结束。要求: 1)? 统计各语句包含字符的个数; 2)? 将三个语句按从小到大的顺序输出 3)? 将三个语句连接成一个语句输出; 4)? 在连接后的语句中的第2个(1号)数组元素后面插入单词“This” (自学 ) 算法分析: 1)把从键盘输入的三个语句存放在一个名为buffer[3][SENTENCELEN]的字符串变量数组中。定义如下: #define SENTENCELEN 200 char buffer[3][SENTENCELEN]; 2)字符按其ASCI

文档评论(0)

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

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

1亿VIP精品文档

相关文档