ImageVerifierCode 换一换
格式:PPT , 页数:37 ,大小:2.11MB ,
文档编号:2048348      下载积分:9.5 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-2048348.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(罗嗣辉)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(C语言程序设计课件:第4章-数组1(语法).ppt)为本站会员(罗嗣辉)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

C语言程序设计课件:第4章-数组1(语法).ppt

1、数组的概念数组的概念概念引入概念引入 30 30 名?名?float x,y,z;float a,b,c,d,e,f;数组的概念数组的概念6.1.1 6.1.1 一维数组的定义及使用一维数组的定义及使用可以是可以是常量常量 和和 符号常量符号常量,不能用变量不能用变量,下标从下标从0开始开始n引用引用 数组名数组名下标下标n必须必须先定义先定义,后使用。,后使用。n只能逐个引用数组只能逐个引用数组元素元素,每个元素的引用方法与一,每个元素的引用方法与一般变量相同。例如:般变量相同。例如:a0=a5+a7-a2*3数组名的构成方法与一般变量名相同数组名的构成方法与一般变量名相同无无a10 一维数

2、组一维数组初始化初始化所赋初值元所赋初值元素从数组的素从数组的第第0个元素开个元素开始始,无赋初值无赋初值元素均为元素均为00,1,2,3,0,0,0,0,0,0数组数组名字名字是数组是数组首元素的内存地址首元素的内存地址。数组名是一个数组名是一个常量常量,不能被赋值。,不能被赋值。a0 a1a2 a3 a4a5 a6 a7 a8 a9a 一维数组一维数组 存储顺序存储顺序#include void main() int i, j; float x20, y, z; int a97.8; xi+j*2 = i+j; z = xy*2; printf(“%f”, x0); printf(“%f”

3、, x20); scanf(“%f”,&x); scanf(“%f”,&x3); printf(“%f”, x); float y20; y = x; y10 = x10;下标表达式的值必须是一个整数下标表达式的值必须是一个整数下标表达式的值应大于等于下标表达式的值应大于等于0小于数组的大小小于数组的大小定义数组的大小必须是一个定义数组的大小必须是一个正整数常量正整数常量数组不能作为一个整体直接输数组不能作为一个整体直接输入输出,用元素入输出,用元素数组不能作为一个整体相赋值,数组不能作为一个整体相赋值,用元素用元素main() int a4 = 1,2,3,4, b4; b = a; 解决方

4、法解决方法 法法1:1:逐个元素赋值逐个元素赋值 b0=a0; b1=a1; b2=a2; b3=a3; 法法2:2:通过循环赋值通过循环赋值 int i; for (i=0;i4;i+) bi = ai; 数组名表示数组的首地址数组名表示数组的首地址, ,其值不可改变其值不可改变! !int a10,i;scanf( %d ,&ai);for (i=0;i10;i+) scanf( %d ,&ai);printf( %d ,ai);for (i=0;i10;i+) printf( %d ,ai);只能逐个对数组元素进行操作(字符数组例外)只能逐个对数组元素进行操作(字符数组例外)n例例1 输

5、入五个实数,并求出这五个实数的平均值输入五个实数,并求出这五个实数的平均值# include void main(void)int i;float x5,sum=0;printf(输入五个数输入五个数: “);for (i=0;i5;i+)scanf(“%f”,&xi);sum+=xi; printf(五个数字是:五个数字是:“);for (i=0;i5;i+)printf(“%f ”,xi);printf(n平均数是平均数是: %f n“,sum/5);利用循环语句获得数组的值利用循环语句获得数组的值利用循环语句输出数组的值利用循环语句输出数组的值max(i=0)max(i=2)max(i=

6、3)n例例 用选择排序的方法对输入的用选择排序的方法对输入的1010个整数进行排序个整数进行排序( (从小到大从小到大) )n思路:思路:1.1.用用f0f0与与fj(1=j=9)fj(1=jfj,f0fj,则则f0f0与与fjfj交换,然后用新的交换,然后用新的f0f0与与fjfj后面的元素比较。比较完后面的元素比较。比较完9 9个元素后,个元素后,0 0号位置号位置的元素的元素f0f0就是就是1010个元素中最小的。个元素中最小的。2.2.用用f1f1作为新的比较基准,与作为新的比较基准,与fj(2=j=9)fj(2=jfj,就交换两个数值,就交换两个数值6.1.2 6.1.2 二维数组的

7、定义及使用二维数组的定义及使用a00 a01 a02 a03 a10 a11 a12 a13 a20 a21 a22 a23 a00 a01 a02 a03 a10 a11 a12 a13 a20 a21 a22 a23行数行数列数列数二维数组理解二维数组理解例例 int a34;20161720181920202120222320089201011201213201415200012002320045200067a00 a01 a02 a03a10 a11 a12 a13a20 a21 a22 a23每个元素每个元素ai由包含由包含4个个元素的一维数组组成元素的一维数组组成a0a1a2行名行

8、名014523a01a02a03a10a11a00a13a20a21a22a23a1267101189a0a1a2二维数组二维数组初始化初始化1 0 0 00 6 0 0 0 0 11 0 注意外面的注意外面的 不能省略不能省略 1 0 0 2 0 0 3 4 5 通过双重循环赋值通过双重循环赋值 int a42=1,2,3,4,5,6,7,8; int b42; int i,j; for (i=0; i4; i+) for (j=0; j2; j+) bij = aij; 使用双重循环使用双重循环 int a42; int i,j; for (i=0; i4; i+) for (j=0; j

9、2; j+) scanf(%d, &aij); n例例5 5 输入一个输入一个3 3行行4 4列的二维数组,设计一程序,求列的二维数组,设计一程序,求出数组元素中的最大值和最小值,以及最大值和最出数组元素中的最大值和最小值,以及最大值和最小值所在的行号和列号。小值所在的行号和列号。用户输入二维数组的初值用户输入二维数组的初值初始认为初始认为a00是最小和是最小和最大值,初始化最小最大最大值,初始化最小最大值的行列号值的行列号2016172018192020212022232008920101120121320141520023a00a01a02a03a10a11a12a13a20a21a22a

10、232016172018192020212022232008920101120121320141520023a00 a01 a02 a03a10 a11 a12 a13a20 a21 a22 a23遍历二维数组,求出极值遍历二维数组,求出极值n例例4 4 设计一程序,将一个设计一程序,将一个4 4行行4 4列的二维数组中行和列的二维数组中行和列元素互换(数学上称为矩阵的转置),并存放到列元素互换(数学上称为矩阵的转置),并存放到另一个数组中。例如:另一个数组中。例如:11 12 13 1415 16 17 1819 20 21 2223 24 25 26a = 11 15 19 2312 16

11、 20 2413 17 21 2514 18 22 26b = 二维数组赋初值二维数组赋初值将数组元素将数组元素aij 赋给数赋给数组元素组元素bji,实现矩阵,实现矩阵的行列元素互换(转置)的行列元素互换(转置)输出显示二维数组输出显示二维数组a的值的值输出显示二维数组输出显示二维数组b的值的值输出显示的模块应该用输出显示的模块应该用函数实现!函数实现!C语言程序设计语言程序设计/*算法:求两个整数算法:求两个整数a和和b的最大公约数的最大公约数返回值:返回返回值:返回a和和b的最大公约数的最大公约数*/int gcd(int a,int b)int r,t;if(ab) /*确保第一个参数

12、大于第二个参数确保第一个参数大于第二个参数*/ t=a; a=b; b=t; r=a%b; while(r!=0) a=b; b=r; r=a%b; return b; 求最大公约数的算法求最大公约数的算法 2022-1-2230例:例: 求学生的平均成绩求学生的平均成绩 #include float average(int stu10, int n); main() int score10, i; float av; printf(Input 10 scores:n); for( i=0; i10; i+ ) scanf(%d, &scorei); av=average(score , 10

13、); printf(Average is:%.2f, av); float average(int stu , int n) int i; float av,total=0; for( i=0; in; i+ ) total += stui; av = total/n; return av; 实参用数组名实参用数组名形参用数组定义形参用数组定义.2109score569372.88stu实参和形参数组类型应一致实参和形参数组类型应一致2022-1-2231a00a01a02a10a11a12a00a01a02a10a11a12实际传送的是数组第一个元素的地址实际传送的是数组第一个元素的地址【例例】(矩阵转置)求矩阵(矩阵转置)求矩阵a a的转置矩阵,所谓矩阵转的转置矩阵,所谓矩阵转置就是将矩阵的行变成列,列变成行,要求输置就是将矩阵的行变成列,列变成行,要求输出转置前后的矩阵。出转置前后的矩阵。

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|