第6章 利用数组处理批量数据.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文档。上传文档
查看更多
第6章利用数组处理批量数据整理ppt

6.1.3一维数组的初始化 当指定了全部元素的初始值时,数组定义时的数组长度可以省略。 int a[5]={1,2,3,4,5};可写为 int a[ ]={1,2,3,4,5}; 6.3.5 字符数组的输入输出 用%s输出字符串时,printf函数中的输出项是字符数组名,不是数组元素名 例 printf(”%s”,c); //c是字符数组名 执行时,按字符数组名c找到数组的起始地址,即c[0]的地址,然后逐个输出数组元素中的字符,直到遇到第一个’\0’为止。 说明:gets()函数从缓冲区取一个字符串,一直取到换行符为止,(该换行符取出不再放回!)然后将字符串存到指定的字符数组中,并且会在最后写进一个空字符’\0’。注意,换行符不会写进数组。 分析以下程序代码 char str[5]; int x; printf(input an integer:); scanf(%d,x); gets(str); printf(x=%d\nstr:%s\n,x,str); 输出结果: 分析以下程序代码 char str[5],s[5]; printf(input a string:); gets(str); gets(s); printf(str:%s\ns:%s\n,str,s); 输出结果: (程序gets函数应用辨析) 思考题 以下语句的输出结果是____。 printf(”%d”, strlen(”Come\040on\n”)); A. 4 B. 8 C. 10 D. 12 答案:B 八进制数用0开头,但在转义字符表示中,0可以写也可以不写,并且不能超过3位,包括0;十六进制数用0x或0X开头。但在转义字符表示中,只能用小写x开头。 课堂练习 1)以下不正确的选项是____。 char s[4]=”1234”; char s[]=”1234”; char s[5]=”1234”; char s[]={”1234”}; 小结使用数组常见错误: 1.定义数组时长度用了变量 2.引用数组元素时下标越界 3.初始化字符数组时字符串长度大于或等于数组长度 4.给字符数组名赋值 5.用关系运算符比较两个字符串的大小 小结使用数组常见错误: 6.用scanf 输入带空格的字符串 7.用循环处理字符串时,循环结束的标志是换行符还是空字符问题 课堂练习 2)以下定义数组的语句中不正确的是__。 int a[2*5]; #define N 10 int a[N]; int n=10; int a[n]; const int N=10; int a[N]; 课堂练习题 3)设有 char s[50]; int i=0; 以下不能将字符串”This is a string.”正确读入数组的语句(组)是________。 A. gets(s); B. while((s[i++]=getchar())!=\n); s[--i]=\0; C. scanf(%s,s); D. strcpy(s, This is a string.); 课堂练习:判断以下语句的对错 1) char str[10]; str=”Ctest”; 2) char s[10], t[]=”Ctest”; s=t; 例6.9 有3个字符串,要求找出其中最大者。 解题思路:处理一个字符串用一维字符数组,处理多个字符串可用二维字符数组 设一个二维的字符数组str,大小为3×10 char str[3][10]; 每一行可以存放一个字符串。可以把str看做一维数组,则其元素分别为str[0],str[1],str[2],它们都是一维字符数组,是数组名。 for (i=0;i3;i++) gets (str[i]); C h i n a \0 \0 \0 \0 \0 str[0] J a p a n \0 \0 \0 \0 \0 str[1] I n d i a \0 \0 \0 \0 \0 str[2] 既然str[0],str[1],str[2]是3个一维字符数组,那就可以把它们按一维数组进行处理 经过三次两两比较,就可得到值最大者,把它放在一维字符数组string中 if (strcmp(str[0],str[1])0) strcpy(string,str[0]); else strcpy(string,str[1]); if (s

文档评论(0)

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

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

1亿VIP精品文档

相关文档