我現在面臨一個問題,似乎無法解決它。每當我開始我的代碼時,我都會遇到分段錯誤。我的目標是擲兩個骰子。該值由隨機數生成。我想滾動10000次並將值保存在一個數組中,所以我可以在最後創建一個小圖來顯示切塊的值。我很感謝有關如何解決問題的任何幫助和提示。這裏是我的代碼:創建一個骰子圖
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define DICE 2
#define DICEEYES (DICE * 6) -DICE +1
#define COUNT 10000
int diceRoll(int dice);
int main(void)
{
srand(time(0));
int valuesOfRoll[DICEEYES] = { 0 };
for(int i = 0; i < COUNT; i++)
{
int index = diceRoll(DICE) - DICE;
valuesOfRoll[index]++;
}
for(int i = 0; i < DICEEYES; i++)
{
if(valuesOfRoll[i] < 1) continue;
printf("The number %2d was rolled %4d times\r\n", i + DICE, valuesOfRoll[i]);
}
return 0;
}
int diceRoll(int dice)
{
int sum;
for(int i = 0; i < dice; i++)
{
sum += rand() % 6 + 1;
}
return sum;
}
C = C++,再加上你嘗試過調試和* *知道它崩潰? – crashmstr
我不得不承認我是新手。到目前爲止還沒有嘗試過。 – Valinho
請打開編譯器的完整警告(嘗試進行優化或不進行優化),它會告訴您至少有一個問題。並請編輯您的標籤,這看起來和感覺像C,而不是C++。 – Mat