用数组记录丢骰子

上一章我们说到掷骰子需要声明数不胜数的变量
这章我们学习数组并模拟丢6个骰子的点数和


声明

声明一个int类型的数组:

int[]val;

变量名前面就是这个变量的类型,如果要创建数组,就在类型后面加一对中括号

我举个例子,变量名前面的内容就是他的类型,所以数组本身也是一种类型
那么就有:

int[][]val;

这是数组的数组,如果你想你还可以继续套娃


赋值

你声明了一个变量,接下来你要为它赋值

val=new int[31];

31是指把31个int变量打包变成数组,你可以写任何正整数。


使用

你现在获得了一个打包的int,但你需要的不是一个数组,而是int类型的数据。那么就要拆开这个包

val[0]=12
Console.WriteLine(val[0]);

val[0]
val[1]
val[2]

val[30]
这些就是你刚才打包生成的变量。他们是独立的31个互不干扰的变量
这里中括号里的数字可以叫索引,也可以叫下标


范围

你刚才声明了一个31个int类型数据的数组
那么val后面的中括号就可以写从0开始数31个数,也就是0-30
如果你写了超过这个范围的数字无论-1还是31都会报错
而且不管你是使用还是赋值,任何方式,只要出现了就会报错


用数组完成丢6个骰子点数和的结果

			Random rd = new Random();
			int[] val = new int[31];
			for (int i = 0, p = 0; i < 100000; i++, p = 0)
			{
    
    
				for (int j = 0; j < 6; j++)
					p += rd.Next(6);
				val[p]++;
			}
			for (int i = 0; i < val.Length; i++)
			{
    
    
				Console.WriteLine(i + 6 + ":\t" + val[i]);
			}

因为结果可以直接写在下标里面,switch也不需要了

猜你喜欢

转载自blog.csdn.net/zms9110750/article/details/107090050