猜数字游戏
为了尽快完成猜数字游戏的编程,我需要对C#软件要有基础的认识,通过小组成员及自己的查阅在B站中找到在C#软件中编程的基础知识介绍,我们进一步去学习。
- 在屏幕上输出数据
1数字、文字、清屏
- 通过新建和修改角色名学会了
- 字符串变量的使用
- 如何读入并保存用户输入的字符串
- 如何输出字符串变量
通过伤害计算学会
- 如何使用整数变量
- 如何将字符串转换为整数
- 如何用整数变量加减乘除
- 如何格式化输出结果
四、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();
}
}
}