c#学习之数组 36选7随机数不重复/折半取余

内容:

数组的定义是:数据类型[] 变量名=new 数据类型[n]  变量名.Length表示数组数值长度;

36选7随机数不重复static void Main(string[] args)
        {
            int[] a = new int[7];//1)先创建一维数组
            Random rand = new Random();//2)定义随机电脑生成随机数;

            for (int i = 0; i < 7; i++)//3)进行筛分将重复的数字去掉
            {
                int n = rand.Next(36);//随机生成36个0-35之间的数字;
                n++;//显示1-36
                bool cunZai = false;//做标记既可以是bool数字也可以;
                for (int j = 0; j < a.Length; j++)//a.Length的意思是数组的长度(数值)
                {
                    if (a[j] == n)
                    {
                        cunZai = true;//数组中有相等的就跳过;
                        break;
                    }
                }

                //存在不存在?不存在的话就放进a数组中,存在的话,就重新生成
                if (cunZai == false)//
                {
                    a[i] = n;//n带入数组
                }
                else
                {
                    i--;//因为不符合重新再进行随机数的运算,在这之前“i++”需要自减;
                }
            }

            //显示
            for (int i = 0; i < a.Length; i++)
            {
                Console.Write(a[i] + "\t");输出数字
            }
        }
折半取余:
        
staticvoid Main33(string[] args)
        {
            //查找
            int[] a = new int[8] { 2, 9, 11, 17, 21, 25, 33, 40 };
            //输入要找的数
            int find = Convert.ToInt32(Console.ReadLine());

            //下标
            int kaiShi=0, jieShu=a.Length-1, zhongJian;
            for (; ; )
            {
                zhongJian = (kaiShi + jieShu) / 2;
                if (a[zhongJian] == find)
                {
                    Console.WriteLine("找到啦");
                    break;
                }
                else
                {
                    if (find > a[zhongJian])
                    {
                        kaiShi = zhongJian + 1;
                    }
                    else
                    {
                        jieShu = zhongJian - 1;
                    }

                    //
                    if (jieShu < kaiShi)
                    {
                        Console.WriteLine("没找到");
                        break;
                    }
                }
            }
        }
查找数字并确定位置        static void Main2(string[] args)
        {
            //查找
            int[] a = new int[8] { 2, 9, 11, 17, 21, 25, 33, 40 };
            //输入要找的数
            int find = Convert.ToInt32(Console.ReadLine());

            //查找
            bool found = false;
            for (int i = 0; i <= a.Length - 1; i++)
            {
                if (a[i] == find)
                {
                    //输出
                    found = true;
                    Console.WriteLine("找到啦,是第{0}个数", i + 1);
                    break;
                }
            }

            //输出找到还还是没有找到
            if (found == false)
            {
                Console.WriteLine("没有找到");
            }

        }
时间: 2024-10-11 22:15:25

c#学习之数组 36选7随机数不重复/折半取余的相关文章

彩票生成器--36选7(不重复)

import java.util.Random; public class suijishu { /** * @param args */ public static void main(String[] args) { // TODO 自动生成的方法存根 //36选7,不重复 //第一步,初始化 定义数组,建随机数组生成器 int []caiPiao=new int[7]; Random ran = new Random(); //第二步,生成 //随机生成7个数 for(int i=0;i<

【面试题】向一个长度为100的int数组,插入1-100的随机数,不能重复

1 public int[] GetNoRepeatArrayy(int arrLength) 2 { 3 int[] array = new int[arrLength]; 4 IList<int> list = new List<int>(); 5 //准备不重复的数据 6 for (int i = 0; i < array.Length; i++) 7 { 8 list.Add(i); 9 } 10 //将不重复的数据随机插入到数组中 11 for (int j = (

PHP学习笔记-数组(1)

1-1 数组定义 1.什么是数组? 所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量. 语法如下: <?php //设置某个变量为一个空数组 $arr=array(); ?> 1-2 索引数组初始化 PHP有两种数组:索引数组.关联数组. 索引和关联两个词都是针对数组的键而言的. 索引数组是指数组的键是整数的数组

java学习之数组(二)

学编程吧java数组学习(二)发布了,欢迎大家通过xuebiancheng8.com来访问. 下面接着来分析数组,前面分析了什么是数组,为什么要用数组,下面来分析下如何使用数组 数组和其他数据类型一样,使用前要先定义.如下 int a[];这样就声明了一个数组 a = new int[10];然后为这个数组申请10个大小的空间 a[0] = 1; a[1] = 2; ....等等来为数组 赋值,为数组赋值完成后就可以通过下标来访问数组 当然数组在定义的时候也可以讲上面操作合并即 int a []

java学习之数组(一)

学编程吧java学习之数组发布了,欢迎大家通过xuebiancheng8.com来访问. 下面来分析下java中的数组. 什么是数组呢,为什么要用数组呢,加入现在需要统计一个班的考试成绩,这个班有30个学生,怎么办呢,如果不用数组,那么就得定义30个变量来保存30名同学的成绩,这样很明显对程序员来说是非常痛苦呢,光30个变量就得定义半天,而且又都不好记,容易记混了,那怎么办呢,这个时候就可以用数组,数组故名思议就是一组数的几个就叫数组,这这一组数使用同一个变量,只要一个变量就可以保存这30个同学

JavaCodeTra 36选7 彩票抽奖

想写个小代码试试自己的运气.然并卵.并不能猜中 import java.util.Random; import java.util.Scanner; /** * */ /** * @author Harry 36选7 * */ public class SucMan { /** * @param args */ public static void main(String[] args) { System.out.print("请输入您所选的7位数字:"); int []CustCho

PHP学习之中数组-遍历一维数组【2】

在PHP学习之中数组[1]中学会怎么创建一个数组,如果PHP学习之中数组[1]中的元素多的话,我们访问元素又是一个问题了,下面我们就使用for语句while,foreach来遍历我们的数组: <?php /* range()原型: * array range ( mixed $start , mixed $limit [, number $step = 1 ] ) * 参数说明: * start 序列的第一个值. limit 序列结束于 limit 的值. step 如果给出了 step 的值,

PHP学习之中数组--创建数组【1】

在PHP中数组的定义有三种写法,分别是: <?php //第一种方式是用关键字 array来创建的 $username = array("demo1","demo2","demo3","demo4"); <?php //第二种方法是用直接声明一个变量,在变量的右边加上中括号的方式来创建数组 $usrename = array(); $username[0]="aaa"; $username[1]

[jQuery学习系列二 ]2-JQuery学习二-数组操作

前言 上一篇内容 已经对于Jquery 有了一些认识, 包括Jquery的选择器和DOM对象, 那么这一篇继续来看下Jquery中很实用的Jquery对于数组的操作. Jquery中对数组的操作大致有以下几种形式:each(迭代), map(转换), grep(筛选), 合并等. 1,迭代(each)jQuery.each( object, callback ) 返回值:Object说明:通用例遍方法,可用于例遍对象和数组.注意: 传入的第一个参数可以是数组或者对象.如果数组,则遍历数组中的每一