關於第二個答案,我幫你修正一些地方....
複製程式
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#define myrandom() srand((unsigned)time(NULL))
#define MAX 12
#define MIN 2
/*SIZE 跟你產生的陣列大小有關,要看有幾個數,因為頭尾都算所以相減後要加一*/
#define SIZE (MAX-MIN+1)
int main(void)
{
int dice[SIZE]={0};
int i,go=100,point1,point2;
myrandom();
for(i=0;i<go;i++)
{
point1=rand()%6+1;
point2=rand()%6+1;
dice[point1+point2-2]++;
/*
//其實如果自己看的懂的話這裡可以改成這樣
point1=rand()%6;
point2=rand()%6;
dice[point1+point2]++;
*/
}
for(i=0;i<SIZE;i++)
printf("點數%d出現%d次\n",i+MIN,dice[i]);
system("pause");
return 0;
}
其實我該怎麼說呢?...第二個答案產生的結果會與第一個不太一樣,你實測後應該就會發現了,不過要測試大量的比較感覺的出來...如果測試夠多第一個答案2~12很平均,第二個的話7會出現最多次,其次是6跟8,再來是5跟9依此類推...