c语言第0章数组-公开课件(精选).ppt

c语言第0章数组-公开课件(精选).ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
main() { char a[]={h,e,l,\0,l,o,\0}; printf(%s,a); } 例 输出:hel h e l \0 l o \0 数组中有多个‘\0’时, 遇第一个结束 main() { int i; char a[5]; scanf(%s,a); for(i=0;i5;i++) printf(%d,,a[i]); } 运行情况: (1)若输入 hel , 正常 (2)若输入 hell , 正常 (3)若输入 hello , 用%s 输出时,会出现问题 h e l \0 h e l l \0 h e l l o 输入字符串长度数组维数 * * 数组是C语言中提供的一种专门用来组织批量数据的数据类型,它可以将性质相同且需要共同参与某项操作的多个数据有效地组织起来,是一种应用十分频繁且非常重要的数据类型。 对批量数据进行处理的情况在实际问题中经常会遇到。 所谓数组就是一批同类型数据的有序集合,每个数组在内存中占一片连续的存储空间,用一个统一的数组名和下标来唯一确定数组中的元素,其中每一个元素通常称为下标变量。只有一个下标的数组称为一维数组,有二个下标的数组称为二维数组,依此类推。 第四章 数组 第四章 数组 构造数据类型之一 数组:有序数据的集合,用数组名标识 元素:属同一数据类型,用数组名和下标确定 4.1 一维数组 一维数组的定义 定义方式: 数据类型 数组名[常量表达式]; 合法标识符 表示元素个数 下标从0开始 [ ] :数组运算符 单目运算符 优先级(1) 左结合 不能用( ) 例 int a[6]; a[0] 0 1 4 5 a[1] a[2] a[3] a[4] a[5] 2 3 a 编译时分配连续内存 内存字节数=数组维数* sizeof(元素数据类型) 数组名表示内存首地址, 是地址常量 * 对于数组类型说明应注意以下几点: 1、允许在同一个类型说明中,说明多个数组和多个变量。如: int a,b,c,d,k1[10],k2[20]; 2、方括号中的常量表达式通常取整型常量或整型常量表达式(包括符号常量)。如: #define N 20 /*用此命令行定义符号常量N,方便程序修改*/ float score[N]; /*正确的定义方式,提倡使用*/ C语言中不允许用变量下标形式对数组进行动态定义。如n为一个普通变量,定义: float score[n]; 是非法的。即使在数组定义语句前用变量初始化、用赋值语句或用输入函数scanf( )对n进行了赋值,上面这条语句仍然是非法的。 * 3、与其他高级语言(如PASCAL、BASIC)不同,C语言中规定数组元素的下标总是从0开始,例如int a[10];说明整型数组a,有10个元素。这10个元素是: a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8], a[9]; 注意最后一个元素是a[9],而不是a[10],该数组不存在数组元素a[10]。 并且特别值得注意的是,C编译器对数组下标越界不作检查。如上述数组不存在数组元素a[10],但是在程序中不小心引用了a[10],程序编译时仍认为是合法的。但程序运行后可能会出现逻辑错误,因为a[10]已不是数组中的元素,越界的操作可能破坏a[9]后面的数据或程序,要特别引起注意。 一维数组的引用 数组必须先定义,后使用 只能逐个引用数组元素,不能一次引用整个数组 数组元素表示形式: 数组名[下标] 其中:下标可以是常量或整型表达式 例 int i=15; int data[i]; (?不能用变量定义数组维数) 例 int a[10]={1,2,3}; printf(“%d”,a); (?) 必须 for(j=0;j10;j++) printf(“%d\t”,a[j]); (?) 例 int data[5]; data[5]=10; //C语言对数组不作越界检查,使用时要 注意 一维数组的初始化 初始化方式   在定义数组时,为数组元素赋初值 (在编译阶段使之得到初值) i

文档评论(0)

小米兰 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档