第四章数组和指针.ppt

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

第四课 数组和指针 本章目标 掌握一维数组的定义和引用 了解二维数组的定义和引用 理解字符数组与字符串 了解指针和指针变量的概念 了解指针变量的定义与应用 数组元素和索引 数组元素由索引或下标标识 数组维数由索引数决定 索引存放从 0 开始的整数 一个包含 11 个元素的数组 定义数组 2-2 数组名后接一个或多个括在方括号内的表达式,用以指定数组的维数 存储类型 数据类型 数组名[数组长度] ; int player[11]; 定义数组 2-1 数组的特性必须在使用前定义 存储类型 数据类型 数组名 数组大小 数组的规范 所有数组元素具有相同的类型 允许使用变量的地方都可以使用数组元素 可以使用整型表达式引用数组的元素 在C语言中使用数组 2-1 即使两个数组的类型和大小相同,也不能检验其是否相等 不能直接将一个数组赋给另一个数组 不能为数组整体赋值 在C语言中使用数组 2-2 数组的应用--排序 输入10个数,按升序输出。 将10个数存入数组a。 将a[0]与a[1]、a[2]…a[9]依次比较,如果比a[0]小,就将它与a[0]交换,这样就将最小的数送到了a[0]中。 再将a[1]与a[2]、a[3]…a[9]依次比较,如果比a[1]小,就将它与a[1]交换,这样就将次小数送到了a[1]中。 重复以上步骤。 示例见备注 冒泡排序 int num[5]={9,16,23,25,90}; int i,j,k; ? for (j=0;j4;j++) ?{ ?? for (i=0;i4-j;i++) ? ?{ ??? if (num[i]num[i+1]) ??? { ??? ? k=num[i]; ???? num[i]=num[i+1]; ???? num[i+1]=k; ?? ? } ? ?} } 二维数组 二维数组的定义: 类型 数组名[常量表达式] [常量表达式] 例如 float a[3][2],b[2][4]; 二维数组在内存中是按行存放的。 其中:a数组有三行两列共6个元素,分别是:a[0][0]、a[0][1]、a[1][0]、a[1][1]、a[2][0]、a[2][1]; b数组有两行四列,共8个元素,分别是:b[0][0]、b[0][1]、b[0][2]、b[0][3]、b[1][0]、b[1][1]、b[1][2]、b[1][3]。 二维数组的初始化 int ary[3][4]= { {1,2,3}, {4,5,6}, {7,8,9} }; 字符串/字符数组 2-1 字符串是以”\0”结尾的字符型数组 字符串中每个字符占一个字节 字符串函数 在标准头文件 string.h 中定义 字符串的输入输出 1、scanf(“%s”,a);/*a是字符数组名*/ 2、gets(a);/*输入一个字符串*/ 3、printf(“%s”,a);/*输出一个字符串*/ 4、puts(a);/*输出一个字符串*/ 注意 printf函数和scanf函数一次可以输入/输出多个字符串,而puts函数和gets函数一次只能输入/输出一个字符串。 %s对应字符数组名,不需要加符号。 用scanf函数输入时,字符串里不能有空格。 字符串示例 #includestdio.h main ( ) { char a[20]; gets(a); printf(%s\n,a); } 运行时输入:abcd efgh 显示结果为:abcd efgh 如果用scanf(%s,a);代替gets(a); 显示结果为:abcd 指针--什么是指针? 指针是一个变量,它包含另一个变量的内存地址 使用指针可以间接访问数据项的值 指针可以指向基本数据类型的变量(如 int、char和double等) 或者数组 指针可以用来做什么? 从函数中返回多个值 从一个函数向另一个函数传递数组和字符串 通过移动指针操作数组 分配内存并对其进行访问 指针变量 指针声明包括类型和变量名,变量名的前面有一个 * type *name; 例如: int *var2; 指针运算符 是一元运算符,它返回操作数的内存地址 var2 = var1; *是 的反运算符,它也是一元运算符,返回指针指向的内存位置中的值 temp = *var2; 给指针赋值 2-1 (1)指针──即地址 一个变量的地址称为该变量的指针。通过变量的指针能够找到该变量。 (2)指针变量──专门用于存储其它变量

文档评论(0)

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

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

1亿VIP精品文档

相关文档