第6章 利用数组处理批量数据讲义.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例:输出一个字符串“I am a boy!”。 程序如下: #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″); } 思考: 1)如何读入一个字符串? 2)如何使用%s输出该串? 在前面介绍过,scanf的各输入项必须以地址方式出现,如 a,b 等。但在前例中却是以数组名方式出现的,这是为什么呢? C语言规定: 数组名就代表了该数组的首地址。整个数组是以首地址开头的一块连续的内存单元。 如有字符数组 char c[10];占用内存可表示为: C[0] C[1] C[2] C[3] C[4] C[5] C[6] C[7] C[8] C[9] 设数组c的首地址为2000,也就是说c[0]单元地址为2000。则数组名c就代表这个首地址。因此在c前面不能再加地址运算符。如写作 scanf(“%s”,c);则是错误的。 在执行函数 printf(“%s”,c);时,按数组名c找到首地址,然后逐个输出数组中各个字符直到遇到字符串终止标志‘\0’为止。 字符数组 如果利用一个scanf函数输入多个字符串,则以空格分隔。 例如: char strl[5],str2[5],str3[5]; scanf(%s%s%s,str1,str2,str3); 输入数据: How are you? 输入后 str1、str2、str3 数组状态 若改为 char str[13]; scanf(%s,str); 如果输入以下12个字符:How are you? str数组状态 H O W \0 字符数组 字符串 在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。前面介绍字符串常量时,已说明字符串总是以‘\0’作为串的结束符。因此当把一个字符串存入一个数组时,也把结束符‘\0存入数组,并以此作为该字符串是否结束的标志。 字符串 字符串:在字符数组后面加上“字符串结束标志”——‘\0’来实现。 char c[]={″China″}; 例如 在内存中数组c的状态 字符串 字符串处理函数 C语言提供了丰富的字符串处理函数,字符串函数则应包含头文件string.h。 1、字符串输出函数 puts 格式: puts(字符数组名) 功能:把字符数组中的字符串输出到显示器,即在屏幕上显示该字符串。 例:char c[]=BASIC\ndBASE; puts(c); 2、字符串输入函数gets 格式: gets(字符数组名) 功能:从标准输入设备键盘上输入一个字符串。 gets函数并不以空格作为字符串输入结束的标志,而只以回车作为输入结束。这是与scanf函数不同的。 字符串处理函数 3、字符串连接函数strcat 格式: strcat(字符数组名1,字符数组名2) 功能:把字符数组2中的字符串连接到字符数组1中字符串的后面,并覆盖字符串1后的串标志‘\0’。本函数返回值是字符数组1的首地址。 例如: char st1[30]=“My name is ”, st2[10]=“Jack”; strcat(st1,st2); st1=“My name is Jack”; 字符串处理函数 4、字符串拷贝函数strcpy 格式: strcpy(字符数组名1,字符数组名2) 功能:把字符数组2中的字符串拷贝到字符数组1中,串结束标志‘\0’也一同拷贝。字符数组名2也可以是一个字符串常量,这时相当于把一个字符串赋予一个字符数组。 例如:char st1[15], st2[]=C Language; strcpy(st1,st2); puts(st1); 本函数要求字符数组1应有足够的长度,否则不能全部装入所拷贝的字符串。 注意:以下不合法 str1=str2; 字符串处理函数 5、字符串比较函数strcmp 格式: strcmp(字符数组名1,字符数组名2) 功能:按照ASCII码顺序比较两个数组中的字符串,并由函数返回值返回比较结果。 字符串1 = 字符串2,返回值 =0; 字符串1 字符串2,返回值 0; 字符串1 字符串2,返回值 0。 本函数也可用于比较两个字符串常量,或比较数组和字符串常量。如:

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档