第04章 简单构造数据类型分析.pptVIP

  1. 1、本文档共81页,可阅读全部内容。
  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文档。上传文档
查看更多
第四章 简单构造数据类型 简单构造数据类型 一维数组的引出及使用 二维数组的引出及使用 字符数组 数组与函数 数组与指针 字符串与指针 引出 到目前为止,我们处理的都是简单数据类型,它们的特点是一个该类型的变量只能对应一个数据,变量与变量值是一一对应关系。 但在解决实际问题的过程中,数据类型是复杂的。 例如: 处理一个班的学生成绩,尽管可以定义几十个变量,但是处理起来很不方便。 我们只学习过字符变量,如何处理字符串的问题? 能否将一个学生的信息(包括学号、姓名、联系电话、家庭住址等)统一处理?应该采用什么样的数据类型? 4.1 一维数组的引出及使用 一维数组的定义 一维数组的引用 例: 使数组元素a[0]~a[9]的值为0~9,然后逆序输出。 void main() { ?int i,a[10]; ?for (i=0;i=9;i++) ???a[i] = i; ?for(i=9;i=0; i--) ???printf(%d ,a[i]); } ?运行输出:?9 8 7 6 5 4 3 2 1 0 选择法排序:将10个整数排序(从小到大) 分析:选择排序的思路如下: 设有10个元素a[1]…a[10] (1)将a[1]与a[2]…a[10]比较,若a[1]比a[2]…a[10]都小,则不进行交换,即无任何操作。 (2)若a[2]…a[10]中有一个以上比a[1]小,则将其中最小的一个(假设为a[i])与a[1]交换,此时a[1]中存放了10个中最小的书。 (3)第二轮将a[2]与a[3]…a[10]比较,将剩下9个数中的最小者a[i]与a[2]对换,此时a[2]中存放的是10个中第2小的数。 (4)依此类推,共进行9轮比较,到a[10]就已按由小到大顺序存放。 二维数组的引出 例:假设考试共有5个科目,一个班有20名学生。输入所有学生的各科成绩,求出每名学生的总成绩。 二维数组程序举例 4.3字符数组 字符数组的引出 字符数组的定义和使用 字符串的定义和使用 字符数组程序举例 4.3.1 字符数组的引出 数组是由相同类型的具有固定个数的元素组成的集合。 每个数组元素都是一个变量,其类型为数组的类型。与相同类型的普通变量完全一样。 当数组元素是字符类型时,我们称之为字符数组。字符数组中的每一个数组元素都是一个字符。 在实际问题中我们经常会遇到使用字符的情况,比如学生的姓名,一个英文单词等等,但是在这些字符中,我们往往考虑的是它们的整体,比如输出学生的姓名,统计英文单词个数等等。当把多个字符进行整体考虑,即考虑一串字符时,就涉及到字符串的概念。C语言中字符串是用字符数组存放的。 4.3.2 字符数组的定义和使用 字符数组的定义 用来存放字符型数据的数组为字符数组。 1、定义格式: char 数组名[常量表达式] 字符数组中,每一个元素存放一个字符。 char a[6]={‘s’,’t’,’r’,’I’,’n’,’g’}; 则 a[0]=’s’, a[1]=’t’, a[2]=’r’, a[3]=’I’, a[4]=’n’, a[5]=’g’ 字符数组的初始化 1、将单个字符赋予数组的各个下标变量: 此时,每个字符均用单引号括起,字符之间用逗号隔开,如: char a[6]={‘s’,’t’,’r’,’I’,’n’,’g’}; 注意: 1)、当数组长度超过字符个数时,则剩余元素用空操作符(‘\0’) 代替; 如:char a[10]={‘s’,’t’,’r’,’I’,’n’,’g’}; 则a[6]=a[7]=a[8]=a[9]=’\0’。 2)、当数组长度小于字符个数时,则出现语法错误。 3)、若提供的初值个数与预定的数组长度相同,在定义时可省略数组长度。 如:a[]={‘C’,’h’,’i’,’n’,’a’} 则元素个数默 认为5。 字符数组的引用 引用字符数组中的一个元素,可以得到一个字符。 例1:输出一个字符串 void main() { char c[10]={ I, , a, m, , a, , s, t, u, d, e, n, t}; int i; for(i=0;i10;i++) printf(“%c”,c[i]); printf(“\n”); } 运行结果:I am a student 4.3.3 字符串的定义及使用 字符串的定义 C语言中的字符串是作为字符数组来处理的。 字符串:由双引号括起来的字符序列 例如: Hello World! China How are you? 注:1.字符串必须以’\0’作为结束标志,它只是表示一个字符串的结束,没有

文档评论(0)

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

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

1亿VIP精品文档

相关文档