//二分法查询 Console.Write("请输入数据个数:"); int n = Convert.ToInt32(Console.ReadLine()); int[] no = new int[n]; int x = 0, y = n - 1; //x、y分别为每次把数组二分后的最小元素、最大元素的下标 //为定义的数组赋值(该程序中数组默认按升序排列,否则需要为数组元素排序) for (int i = 0; i < n; i++) { Console.Write("输入数据{0}:", i + 1); no[i] = Convert.ToInt32(Console.ReadLine()); } Console.Clear(); //清屏 Console.Write("请输入要查询的数:"); int sel = Convert.ToInt32(Console.ReadLine()); //二分法 while (y >= x) { int zj = (x + y) / 2; //zj为x,y的中间值 if (sel == no[zj]) //判断查询值是否是本组元素的中间元素 { Console.WriteLine("第{0}个元素!", zj + 1); break; } else if (sel < no[zj]) //查询值小于中间元素,则中间元素前一位作为下组元素的最大元素 { y = zj - 1; } else if (sel > no[zj]) //查询值大于中间元素,则中间元素后一位作为下组元素的最小元素 { x = zj + 1; } } if (y < x) { Console.WriteLine("查无此数!"); }
二维数组
标准二维数组
例:建一个3行4列的二维数组
int [,]a=new int[3,4];
伪二维数组:由一维数组组成
例:int[][]a=new int[2][];
int[]a1=new int[3];
int[]a2=new int[4];
a[0] = a1;
a[1] = a2;
.Length 统计数组元素个数
ConsoleKeyInfo K = Console.ReadKey(); //读取按键信息
string k = K.Key.ToString(); //把按键信息转成字符串。例:按“A”键,k值就为“A”
.Split(‘’) 根据()内的字符拆分字符串,()内可以多个字符,()内字符必须用单引号
string s = "hello world";
string[] a = s.Split('w'); //根据“w”拆分字符串,并赋值给数组a
Console.WriteLine(a[0]);
Console.WriteLine(a[1]);
显示结果: