数组和指向数组的指针C语言课件.ppt
《数组和指向数组的指针C语言课件.ppt》由会员分享,可在线阅读,更多相关《数组和指向数组的指针C语言课件.ppt(44页珍藏版)》请在三一办公上搜索。
1、数组和指向数组的指针,第6章,6.2 一维数组,第6章,(1)数组的类型就是数组各个元素的类型,对于一个数组,所有元素的数据类型都是相同的。(2)数组名取名规则与变量名相同,遵守标识符命名规则。(3)数组名后是用方括弧括起来的可以是常量、常量表达式或符号常量,不能是变量。(4)所有数组元素共用一个名字,用下标来区别每个不同元素。下标从0开始,按照下标顺序依次连续存放。如:a0,a1,a2,。(5)常量表达式表示元素个数,即数组的长度。如:int a10表示a数组有10个元素。,一维数组的定义,格式:类型说明符 数组名常量表达式;,6.2 一维数组,第6章,说明:常量列表可以是数值、字符常量或字
2、符串常量,数组元素的初值必须依次放在一对花括号内。,一维数组的初始化,格式:类型说明符 数组名下标=常量列表;,6.2 一维数组,第6章,说明:下标可以是整型常量或整型表达式。例如:a1,a2*2。若要对一维数组的连续多个元素引用或操作,可用一重循环实现。如:for(i=0;i10,;+)printf(“%4d”,ai);,6.2.3 一维数组元素的引用,格式:数组名下标,6.2 一维数组,第6章,【例6.1】用一维数组,求10个学生的单科平均成绩。程序思路与框架:main()定义循环变量 i,求和累加器s=0,定义数组a10并初始化;循环for(i=0;i=9;i+)对10个数求和后赋值给变
3、量s 循环结束,求平均分;打印输出平均分;,一维数组应用举例,6.2 一维数组,第6章,程序代码:#include main()int i,s=0,a10=78,89,54,90,89,70,100,56,67,95;/*给数组a的10个元素初始化赋值*/float ave;for(i=0;i10;i+)s=s+ai;/*用循环对10个数求和后赋值给变量s*/ave=s/10.0;/*计算平均分*/printf(“ave=%.2fn”,ave);/*平均分按实型输出,小数点保留2为小数*/,一维数组应用举例,6.2 一维数组,第6章,程序代码:#include main()int i,s=0,
4、a10=78,89,54,90,89,70,100,56,67,95;/*给数组a的10个元素初始化赋值*/float ave;for(i=0;i10;i+)s=s+ai;/*用循环对10个数求和后赋值给变量s*/ave=s/10.0;/*计算平均分*/printf(“ave=%.2fn”,ave);/*平均分按实型输出,小数点保留2为小数*/,一维数组应用举例,运行结果为:ave=78.80,6.2 一维数组,第6章,【例6.2】对10个学生成绩,求出最高分和最低分。分析:用【例6.1】的10个学生成绩,定义2个变量,分别用来存放求出的最高分和最低分。程序思路与框架:main()定义循环变量
5、 i,存放最大和最小值变量amax,amin,定义数组a10存放数据;用循环语句输入10个数 scanf(%d,i+)用条件语句对10个数求最高分,赋值给变量amax 用条件语句对10个数求最低分,赋值给变量amin 循环结束,输出最高分和最低分;,一维数组应用举例,6.2 一维数组,第6章,程序代码:#include main()int i,amax,amin,a10;printf(input 10 numbers:n);/*人机会话方式提示输入数据*/for(i=0;iai)amin=ai;/*用循环对10个数求最小值赋值给变量amin*/Printf(“n最高分=%dn最低分=%dn”,
6、amax,amin);/*打印最高分和最低分*/,一维数组应用举例,input 10 numbers:78 89 54 90 89 70 100 56 67 95(回车键)最高分=100 最低分=54,6.3 二维数组,第6章,说明:常量表达式1设置二维数组的行数,常量表达式2设置二维数组的列数。,二维数组的定义,格式:类型说明符 数组名常量表达式1常量表达式2,6.3 二维数组,第6章,二维数组的初始化,格式:类型说明符 二维数组名行下标列下标=常量列表,;,6.3 二维数组,第6章,二维数组的引用,格式:数组名行下标列下标,6.3 二维数组,第6章,二维数组应用举例,【例6.4】显示3个学
7、生的信息:学号、数学、英语、计算机、总分、平均分。分析:应该设二维数组,3个人每人6项内容,所以大小应为 int student36,最后2列分别为存放总分和平均分。,程序代码:#include main()int student36=201101,78,93,82,201102,67,83,72,201103,55,83,62;int i,j;printf(学号 数学 英语 计算机 总分 平均分 n);for(i=0;i3;i+)for(j=0;j6;j+)printf(%-12d,studentij);/*打印student数组的数据*/printf(n);,6.4 字符型数组与字符串,第
8、6章,字符数组的定义,一维字符数组的定义格式:char 数组名常量表达式;例如:char a10;二维字符数组的定义格式:char 数组名常量表达式1常量表达式2;例如:char b34;,6.4 字符型数组与字符串,第6章,字符数组的初始化,对字符数组初始化,最容易理解的方式是逐个字符赋给数组中各元素。如:char c10=I,a,m,h,a,p,p,y;等价于:c0=I;c1=;c2=a;c3=m;c4=;c5=h;c6=a;c7=p;c8=p;c9=y;以上定义C为字符数组,包含10个元素,赋值后数组的状态如图所示。,字符数组赋值后的状态,6.4 字符型数组与字符串,第6章,字符数组的引
9、用,用字符数组的下标指定要引用的数组元素。一维字符数组的引用格式:数组名 下标 二维字符数组的引用格式:数组名 行下标 列下标,6.4 字符型数组与字符串,第6章,字符数组的引用,【例6.6】输出一个字符串。#include main()char c10=I,a,m,h,a,p,p,y;int i;for(i=0;i10;i+)printf(“%c”,ci);printf(“n”);,运行结果为:I am happy,6.4 字符型数组与字符串,第6章,字符串,在C语言中,“字符串常量”是用双引号括起来的一串字符,并用0(ASCII码值为0)作为字符串的结束标志,它占一个字节的内存空间,但不计
10、入串的长度。C语言中没有专门的字符串变量,所以用字符型一维数组存储字符串。1用字符串常量给字符数组赋初值(初始化)例如:char c6=“China”;说明:(1)如果提供的字符个数大于数组长度,系统报错。(2)如果提供的字符个数小于数组长度,则在最后一个字符后添加0作为字符串结束标志。,6.4 字符型数组与字符串,第6章,字符数组的输入和输出,1逐个字符输入和输出 用格式“%c”输入或输出一个字符,如【例6.7】。逐个输入字符结束后,系统不会自动在末尾添加0,因此输出时也用格式符“%c”逐个输出字符。2整个字符串输入和输出 用格式符“%s”输入或输出字符串。例如:char c=“China”
11、;printf(“%s”,c);,6.4 字符型数组与字符串,第6章,字符串处理函数,1字符串输出函数 格式:puts(字符数组名或字符串)功能:将一个字符串(以0为结束标志)输出到终端。输出的字符串中可以包含转义字符。例如:char str=“ChinanBei jing”;puts(str);输出:China Bei jing 在输出时系统将字符串结束标志0转换成n,即输出完字符串后换行。,6.4 字符型数组与字符串,第6章,字符串处理函数,2字符串输入函数 格式:gets(字符数组)功能:从终端输入一个字符串(可包含空格)以回车为输入结束标志,将接收到的字符依次赋值给字符数组各个元素,并
12、自动在字符串末尾加结束标记0。例如:gets(str);注意:用puts和gets函数只能输入或输出一个字符串,不能写成:puts(str1,str2);或:gets(str1,str2);,6.4 字符型数组与字符串,第6章,字符串处理函数,3连接两个字符串函数 格式:strcat(字符串1,字符串2)功能:把字符串2中的字符连接到字符串1的字符后面,结果放在字符串1中,函数调用后得到一个函数值,即字符串1的起始地址。例如:char str130=“peoples republic of”;char str2=“china”;printf(“%s”,strcat(str1,str2);输出:
13、peoples republic of china,6.4 字符型数组与字符串,第6章,字符串处理函数,4字符串拷贝函数 格式:strcpy(字符数组,字符串或字符数组)功能:将字符串或拷贝到字符数组中去。例如:char str110,str2=“china”;strcpy(str1,str2);/*或strcpy(str1,“china”);*/执行后str1的内容为:china00000,6.4 字符型数组与字符串,第6章,字符串处理函数,5.字符串比较函数 格式:strcmp(字符串1,字符串2)功能:比较字符串1和字符串2的大小。说明:按照ASCII码值大小将两个字符串自左至右逐个字符
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组 指向 指针 语言 课件

链接地址:https://www.31ppt.com/p-6579173.html