文档详情

第4章+数组与集合-1(课件)-《算法与程序设计-C#》同步教学(清华大学版).pptx

发布:2025-05-22约4.71千字共29页下载文档
文本预览下载声明

C#程序设计第4章数组与集合

2本章目标了解数组的基本概念掌握一维数组和二维数组的使用掌握Array类的使用掌握数组的各种操作

3本章主要内容一维数组的声明、实例化、初始化和访问二数组的声明、实例化、初始化和访问多维数组的声明、实例化、初始化和访问数组的基本操作和排序System.Array类的使用

4本章主要内容一维数组多维数组交错数组数组的基本操作和排序作为对象的数组一维数组

5本章主要内容一维数组多维数组交错数组数组的基本操作和排序作为对象的数组一维数组

6 数组为什么要使用数组?很多不同类型的数据,

需要进行分类存放,便于查找。什么是数组?类型?数组也是一个变量,存储的是相同数据类型的一组数据。引用类型数组元素可以是任何类型数组在内存中的存储情况?

7数组只包含单个序列的数组称为一维数组多维数组通过一个或多个值进行索引[0][1][2][3]……[N-1][0,0][0,N-1][0,1][0,2][0,3]……[1,0][1,N-1][1,1][1,2][1,3]……[2,0][2,N-1][2,1][2,2][2,3]……[3,0][3,N-1][3,1][3,2][3,3]……[M-1,0][M-1,N-1][M-1,1][M-1,2][M-1,3]……C#支持三种数组:一维数组、多维数组和交错数组数组有一个“秩(rank)”,称为数组的维度秩为1:一维数组秩为大于1多维数组

8动态初始化一维数组使用数组的步骤:声明数组 int[]score;分配空间 score=newint[5];元素赋值 score[0]=95,...,score[4]=67;引用数组元素 score=newint[5]{95,89,79,64,67};系统会给每个数组元素一个默认的值。布尔-false数值—0 string—null常量或变量int[]score={95,89,79,64,67};String[]str={How,“are,you};必须是常量:和元素个数相等。int[]score=newint[5];score=newint[]{90,89};

9访问数组元素引用数组元素:score[3]下标可以是整型常量;intsize=5;score[size]下标也可以是变量或表达式;for或foreach循环访问数组元素每个数组都有一个属性length指明它的长度。intsize=100;int[]score=newint[size];for(inti=0;iscore.length;i++){ … } //使用score.length不会引起数组下标越界。多维数组中返回元素个数例:4-1统计学生成绩

10一维数组int[]score;Randomrnd=newRandom();intn,sum=0,overAvg=0;doubleavgScore;Console.Write(请输入学生人数n:);n=int.Parse(Console.ReadLine());score=newint[n];例4.1输入正整数n,随机产生n个学生的成绩,计算学生的平均成绩,计算高于平均成绩的学生人数rnd.next(a,b);//a=数b

11一维数组for(inti=0;iscore.Length;i++){score[i]=rnd.Next(101);sum+=score[i];}例4.1输入正整数n,随机产生n个学生的成绩,计算学生的平均成绩,计算高于平均成绩的学生人数数组的元素个数ran.Next(maxValue)//小于maxValue的非负整数

12一维数组avgScore=(double)sum/n;foreach(doubledinavgScore){if(davgScore)overAvg++;}例4.1输入正整数n,随机产生n个学生的成绩,计算学生的平均成绩,计算高于平均成绩的学生人数数组的元素个数ran.Next(maxValue)//小于maxValue的非负整数

13本章主要内容4.1.1一维数组4.1.2多维数组4.1.3交错数组4.1.4数组的基本操作和排序4.1.5作为对象的数组

144.1.2多维数组声明多维数组时,用逗号表示维数,定义一个n(n≥2)维数组,需要n-1个逗号在数组声明中即使没有指定维数的实际大小,也必须使用逗号分隔各个维多维数组的各维的长度必

显示全部
相似文档