【无标题】

猜数字游戏

为了尽快完成猜数字游戏的编程,我需要对C#软件要有基础的认识,通过小组成员及自己的查阅在B站中找到在C#软件中编程的基础知识介绍,我们进一步去学习。

  • 在屏幕上输出数据

1数字、文字、清屏

  • 通过新建和修改角色名学会了
  1. 字符串变量的使用
  2. 如何读入并保存用户输入的字符串
  3. 如何输出字符串变量

通过伤害计算学会

  1. 如何使用整数变量
  2. 如何将字符串转换为整数
  3. 如何用整数变量加减乘除
  4. 如何格式化输出结果

   四、if语句、if语句的嵌套、并列elseif

猜数字游戏(基本完成)

namespace WindowsFormsApp7

{

    class Class1

    {

        //显示数字方法

        public static void display(String[] RightNum)

        {

            //把传进来的值Form1 中的label

            Form1.form.label1.Text = RightNum[0];//个位

            Form1.form.label2.Text = RightNum[1];//十位

            Form1.form.label3.Text = RightNum[2];//百位

            Form1.form.label4.Text = RightNum[3];//千位

        }

        //写数字

        public static void AddNum(String[] GuessNum, String wei)

        {

            if (GuessNum[3] != null)

            {

                return;         //如果第三位为不为null 跳出次函数

            }

            for (int i = 0; i < GuessNum.Length; i++)  //循环赋值

            {

                if (GuessNum[i] == null)

                {

                    GuessNum[i] = wei;    //获取传入的label的text

                    display(GuessNum);

                    break;

                }

            }

        }

        //生成四个不重复的0—9

        public static void random4(String[] RightNum)

        {

            //有重复的用goto重复执行

            ran:

            Random num = new Random();//生成四个随机数

            for (int i = 0; i < 4; i++)

            {

                string ran = num.Next(0,9).ToString();

                RightNum[i] = ran;

            }

            if ((RightNum[0] == RightNum[1])||(RightNum[0] == RightNum[2]) ||(RightNum[0] == RightNum[3]) ||(RightNum[1] == RightNum[2])||(RightNum[1] == RightNum[3]) ||(RightNum[2] == RightNum[3]) )

            {

                goto ran;//判断是否存在重复的,一个个比较,这个方法比较有局限

            }

            else 

            {

                return;//结束本函数

            }

            

        }

        // 判断几A几B

        public static void judgement(string []GuessNum,String[] RightNum)

        {

            int A = 0;

            int B = 0;

            int C = 0;

            for(int i=0;i<4;i++)

            {

                if(GuessNum[i]==RightNum[i])

                {

                    A++;  //正确的数字和猜的数字按位比较,输出A为位置正确的数字

                }

            for(int j=0;j<4;j++)

                {

                    if(GuessNum[i]==RightNum[j])//正确的数字每位都和猜的数字每位比较 一共16次

                    {

                        B++;  //B表示位正确的数字和位置不对但数对的和

                    }    

                }

            }

            C = B - A;//位置不对但数对的个数

            if(C<=0)//C可能存在负数的情况

            {

               C = 0;

            }

            Form1.form.label5.Text = A.ToString();

            Form1.form.label6.Text = C.ToString();

        }

        

    }

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值