閲覧ありがとうございます。
int型で100以上200未満の乱数を1万回発生させて、各数値が何回発生したのかをカウントし、それをcsvファイルに出力するものを作っているのですが、乱数を53回以上発生させようとすると図1のようなエラーが出てきてしまいます。
図1
C
1#include <stdio.h> 2#include <time.h> 3#include <stdlib.h> 4 5 6int main(){ 7 int loop ,tmp , num[100]; 8 FILE *FP; 9 if ((FP = fopen("random.csv", "w")) == NULL){ 10 printf("ファイルが開けません\n"); return (1); 11 } 12 for (loop = 0; loop <100; loop++){ 13 num[loop] = 0; 14 } 15 for (loop = 0; loop < 53; loop++){ //乱数を発生させる回数 53以上だと止まってしまう 16 tmp = 100 + (int)(rand()*(200 - 100 + 1.0) / (1.0 + RAND_MAX)); 17 num[tmp - 100]++; 18 } 19 20 for (loop = 0; loop < 100; loop++){ 21 fprintf(FP ,"%d,%d,\n",loop+100 ,num[loop]); 22 } 23 fclose(FP); 24 return (0); 25}
わかりづらい質問かもしれませんが回答よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2016/01/23 09:55