【C#】数组


数组的声明

数组可以一次性声明多个相同类型的变量

  #region 数组的声明方式
            //数组的声明方式
            //第一种
            int[] nums = new int[10];//长度为10.索引是0-9 int类型的 下标也是0-9
            //第二种
            int[] nums2 = new int[] { 1, 2, 3, 4, 5 };
            //  这个数组只能存5个数
            //第三种
            int[] nums3 = new int[3] {1,2,3 };
            //[]中是几,后面大括号中就只能输入几个数字,规定了字符长度
            //第四种
            int[] nums4 = { 1, 2, 3, 4, 5 };//只能输入5个字符。
 #endregion 

数组的存值和取值

#region 数组的存值
            //数组的存值
            int[] nums = new int[10];

            nums[5] = 23;
            nums[7] = 100;
            //数组的存值和取值都是通过下标或者索引来进行赋值和取值的。
            
            Console.WriteLine("nums[5]");
            Console.WriteLine("nums[7]");
            Console.ReadKey();
 #endregion

#region 数组的存值和取值
            //赋值
            int[] nums = new int[10];

            for (int i=0;i<5;i++)
            {
                nums[i] = 10;
            }
            //取值
            //遍历
            for (int i=0;i<5;i++)
            {
                Console.WriteLine(nums[i]);
            }
            Console.ReadKey();
#endregion

数组求最值 求和 求平均值

#region 数组拓展练习
            //从一个正数组中取出最大的整数,最小整数,总和,平均值
            int[] nums = new int[] { -12, 90, -56, 89, 0, 345 };
            int max = int.MinValue;//求最大值
            int min = int.MaxValue;//求最小值的变量

            int sum = 0;
            for(int i=0;i<nums.Length;i++)
            {
                if(nums[i]>max)
                {
                    max = nums[i];
                }
                if(nums[i]<min)
                {
                    min = nums[i];
                }
                sum += nums[i];//求和

            }
            Console.WriteLine("和是{0},最大值是{1},最小值是{2},平均值是{3}", sum, max, min, sum / nums.Length);
            Console.ReadKey();
  #endregion 

//使用方法进行数组的求和

#region 数组的求和
            //计算一个整数组的所有元素的和

            Program.SumArray();
            Console.ReadKey();
        }
        //下面使用一个方法
        public static void SumArray()
        { 
            int[] numbers = new int[] { 1, 2, 3, 4, 5 };

            int sum = 0;
            for(int i =0;i<numbers.Length;i++)
            {
                sum += numbers[i];
            }
            Console.WriteLine("和为{0}", sum);
#endregion 

数组的排序

排序是从小到大或者从大到小
冒泡排序

#region 数组的排序
 //冒泡排序

            int[] nums = new int[] {98,23,45,43,};
            int temp = 0;

            for (int j = 0; j < nums.Length - 1; j++)
            {
                for (int i = 0; i < nums.Length - 1 - j; i++)
                {
                    if (nums[i] > nums[i + 1])
                    {
                        temp = nums[1];
                        nums[i] = nums[i + 1];

                        nums[i + 1] = temp;
                    }
                }
            }
            for(int i=0;i<nums.Length;i++)
            {
                Console.Write(nums[i] + "\t");
            }
            Console.ReadKey();
 //冒泡排序的第二种方法

            int[] nums = new int[] { 2, 43, 3, 1, 76 };
            Array.Sort(nums);

            for(int i=0;i<nums.Length;i++)
            {
                Console.WriteLine(nums[i] + "\t");
            }
            Console.ReadKey();
 #endregion

数组的反转

#region 反转

            int[] nums = new int[] {2,43,3,1,76 };
            //Array.Sort(nums);//排序
            //Array.Reverse(nums);//这个方法是反转
             
            //for (int i = 0; i < nums.Length; i++)
            //{
            //    Console.WriteLine(nums[i] + "\t");
            //}
            //下面是精简版的反转
            for(int i=nums.Length -1;i>=0;i--)
            {
                Console.WriteLine(nums[i] + "\t");
            }
            Console.ReadKey();
#endregion
#region 将一个字符串数组的元素的顺序进行反转
 			//第一种方法
            string[] text = { "我", "是", "好人" };
            for(int i=text.Length -1;i>=0;i--)
            {
                Console.WriteLine(text[i] + "\t");
            }
            Console.ReadKey();
            //第二种方法

            string[] text = { "我", "是", "好人" };
            Array.Reverse(text);
            for (int i=0;i<text.Length;i++ )
            {
                Console.WriteLine(text[i] + "\t");
            }
            Console.ReadKey();
            Console.ReadKey();


            //第三种方法

            string[] text = { "我", "是", "好人" };
            string temp = "";
            for(int i=0;i<text.Length /2;i++)
            {
                temp = text[i];
                text[i]= text[text.Length - i - 1];
                    text[text.Length - 1 - i] = temp;
            }
            for (int i = 0; i < text.Length; i++)
            {
                Console.WriteLine(text[i] + "\t");
            }
            Console.ReadKey();

#endregion

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张_Laura

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值