C#之声明数组

本文深入浅出地介绍了数组的基本概念,包括数组的定义、特点和在C#中的声明方式。并通过实例演示了数组的排序和冒泡排序过程,帮助读者理解数组的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 什么是数组?

所谓数组,是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。

简单来说,数组就是储存多个相同类型数据的集合。

  • 数组的特点有什么?
  1. 数组是相同数据类型的元素的集合
  2. 数组中各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
  3. 数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。

例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。

  • C#中数组的声明方式有哪些?
  1. 第一种声明方式
int[] num = new int[10]; //表示数组长度为10,索引为0-9,  int 类型  

int[] sum = new int[20]; //表示数组长度为20,索引为0-19, int 类型   

             此种声明方式,是根据中括号中的数值确定数组的长度

 

  1. 第二种声明方式
    int[] num2 = new int[] { 1, 2, 3, 4, 5 }; //此数值只能存5个值

              此种声明方式,是存大括号内的固定长度的值。如:此声明中,数组长度为5.

 

  1. 第三种声明方式
       int[]  num = new int[3] { 1, 2, 3, };  //此数组只能存3个值

              此种声明方式,根据中括号内的数值确定数组的长度。如:在此声明中,数组的长              度为3

 

  1. 第四种声明方式
              int[] num = { 1, 2, 3, 4, 5, 6 };

 

  • 数组如何使用?

       数组练习:

       1、数组中的数值进行排序

            int[] avg = new int[] { 4, 32, 64, 23, 64, 34, 75, 8 };

            Array.Sort(avg);        //排序

            //Array.Reverse(avg);     //反转

            for (int i = 0; i < avg.Length; i++)

            {

                Console.WriteLine(avg[i]);

            }


            Console.ReadKey();

 

      2、对数组执行冒泡排序

            //冒泡排序,从小到大排列

            //首先,定义一个数组

            int[] nums = new int[] { 1, 3, 32, 75, 543, 444, 343, 6, 67 };

            int temp = 0;       //定义一个变量接收最大值,满足数组的值的交换条件

            for (int j = 0; j < nums.Length; j++)  //定义一个for循环,达到满足已经排过序的数组不用重复排序

            {

                for (int i = 0; i < nums.Length - 1 - j; i++)     //定义要给for循环,执行相邻两个数组的交换和比较大小。

                {

                    if (nums[i] > nums[i + 1])      //比较相邻数组的大小,执行排序

                    {

                        temp = nums[i];

                        nums[i] = nums[i + 1];


                        nums[i + 1] = temp;


                    }

                }

            }

            for (int k = 0; k < nums.Length; k++)       //遍历数组,显示数组

            {

                Console.WriteLine(nums[k] + "\n");

            }

            Console.ReadKey();

     

  • 扩展

       遍历是什么?

       遍历:所谓遍历(Traversal),是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问题。 遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。当然遍历的概念也适合于多元素集合的情况,如数组

树的遍历是树的一种重要的运算。所谓遍历是指对树中所有结点的信息的访问,即依次对树中每个结点访问一次且仅访问一次。树的3种最重要的遍历方式分别称为前序遍历中序遍历后序遍历。以这3种方式遍历一棵树时,若按访问结点的先后次序将结点排列起来,就可分别得到树中所有结点的前序列表、中序列表和后序列表。相应的结点次序分别称为结点的前序、中序和后序。

       那么,数组的遍历是什么?这里不再解释了哈。

C#声明一个随机数数组可以通过使用 `Random` 类来实现。`Random` 类位于 `System` 命名空间中,提供了生成伪随机数的方法。以下是一个完整的示例,展示如何声明并初始化一个包含随机数的数组: ```csharp using System; class Program { static void Main() { // 创建 Random 对象 Random random = new Random(); // 声明数组大小 int arraySize = 10; // 声明并初始化整型数组 int[] randomNumbers = new int[arraySize]; // 填充数组 for (int i = 0; i < arraySize; i++) { // 生成范围在 1 到 100 的随机数 randomNumbers[i] = random.Next(1, 101); } // 输出数组内容 Console.WriteLine("随机数数组内容:"); foreach (int number in randomNumbers) { Console.WriteLine(number); } } } ``` 上述代码首先创建了一个 `Random` 实例,用于生成随机数[^4]。接着声明了一个固定大小的整型数组,并通过循环调用 `random.Next(minValue, maxValue)` 方法填充数组,其中 `minValue` 是最小值(包括),而 `maxValue` 是最大值(不包括)。最后,遍历数组并输出其内容。 ### 随机数范围控制 若需要生成特定范围内的随机数,例如从 `1` 到 `100`,可以使用 `random.Next(1, 101)` 来确保上限值 `100` 被包含在内。注意,`Next(int minValue, int maxValue)` 的第二个参数是独占的,因此要获取到 `100`,需指定 `101` 作为上限[^4]。 ### 浮点数随机数 如果需要生成浮点类型的随机数,则可以使用 `NextDouble()` 方法,它返回一个大于等于 `0.0` 并小于 `1.0` 的双精度浮点数。例如: ```csharp double[] randomDoubles = new double[arraySize]; for (int i = 0; i < arraySize; i++) { // 生成 0.0 到 1.0 之间的随机浮点数 randomDoubles[i] = random.NextDouble(); } ``` 此方法适用于需要非整数随机值的情况。
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值