一维数组

一维数组的定义:
 

          int [] a;
          double [] b;
          string [] c ;

一维数组的动态初始化:

                                       不给定初始值,各元素为默认值:数值类型为0,布尔类型为false,字符串类型为null。

               int [] a = new int[10];

-------------------------------------------------------------------------------------------

               int n = 5 ;
               int []myarr = new int [n];//数组myarr长度为n

                                         给定初始值,给出长度数值则长度必须相等

             int [] b = new int[10] {1,2,3,4,5,6,,7,8,9,10};
 
-------------------------------------------------------------------------------------------

             int [] b = new int []{1,2,3,4,5,6,7,8,9,10}

              不允许数组长度为变量。

一维数组的静态初始化 

                                    静态初始化必须与数组定义结合。

                 int [] c =  { 1,2,3,4,5};
                 不用new。

访问一维数组中的元素:两种方法

                      int [] d = {1,2,3,4,5};

                        for (int i = 0 ;i < 5 ;i ++)
                        Console.Write("{0}",d[i]);

                       Console.WriteLine ();

    foreach语句

                      foreach的两种语句:


                     foreach(类型 迭代变量 in 数组或集合)//显式迭代变量格式
                      语句;
-------------------------------------------------------------------------------------------

                     foreach (var迭代变量 in 数组或集合)//隐式迭代变量
                      语句;
定义一个e的数组,并用foreach语句循环访问该数组

   int []e = {1,2,3,4,5,6};
   foreach (int i in e )
   System.Console.Write("{0}",i);
   Console.writeLine();//输出为1,2,3,4,5,6

一维数组的越界

越界即下标超出

设计控制台应用程序,采用二分法在有序的数组a中查找用户输入的值,并提示相应的查找结果。

 double[] a = new double[10] { 0,1.2,2.5,3.1,4.6,5.0,6.7,7.6,8.2,9.8};
            double k;
            int low = 0;
            int high = 9;
            int mid;

            Console.Write("k");
            k = double.Parse(Console.ReadLine());
            while (low <= high)
            {
                mid = (low + high) / 2;
                if (a[mid] == k)
                {
                    Console.WriteLine("a[{0}] = {1}", mid, k);
                    return;//返回
                }

                else if (a[mid] > k)
                    high = mid - 1;
                else
                    low = mid + 1;

            }
            Console.WriteLine("未找到{0}",k);

 

 

 

 

 

 

 

 

 

                             

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值