0
我正在試圖創建一個程序,以給出在0到0,3範圍內的隨機數。並由用戶授予種子。我的代碼是:浮點異常(核心轉儲)。創建者隨機數
#include <stdio.h>
#include <stdlib.h>
int getrand(int min,int max);
int main()
{
unsigned seed;
int p=0, i=0;
float min,max;
printf("Input a random number seed: ");
scanf("%u",&seed);
srand(seed);
for(i=0;i<getrand(0,0.3); i++) p=getrand(min,max);
printf("Random value : %d \n",p);
return(0);
}
int getrand(int min,int max){
return(rand()%(max-min)+min);
}
and
當我運行它,它給我這個錯誤:浮點異常(核心轉儲) 我能發現的錯誤。
「getrand」函數的定義指定了兩個整數r論據。 '0.3'不是沒有整數。我有點驚訝,導致了核心轉儲,但我仍然會修復它。 –
與另一個電話同上 - 在這種情況下('getrand(min,max)'),你傳遞了兩個浮點數。也許編譯與所有的警告 –
什麼是「我可以發現錯誤」應該是什麼意思?你找不到錯誤?假設如此,您可以將其重寫爲「我找不到錯誤」。我會爲你編輯,但我不確定你的意思,也不想誤解。另一種可能是你可以找到更多的錯誤,例如:「我發現錯誤」。 –