剛剛在C編程,我試圖產生一次隨機數。但是當程序符合時,它會在用戶指定的範圍內生成30個隨機數。使用數組會更容易嗎?任何幫助都會很好。如何在C範圍內生成一個隨機數?
編輯
程序應提示用戶輸入銷售數量從1到10000下的範圍內進行模擬,它應該做的每一個模擬銷售以下:隨機選擇一個員工將銷售額記入貸方,隨機確定銷售總金額,將該金額添加到所選員工的銷售總額中,並增加員工的銷售數量。 - 這基本上是我想要做的。很抱歉的混亂
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main (void)
{
int n,c; // n is the number of sales to simulate, c is the counter
int id[30];// id[30] is the number of employees
srand(time(NULL));
int myVar;
printf("Enter the number of sales to simulate: ");
scanf("%d", &n);
while(n<1 || n>10000)//blocking while loop
{
//prompt user to enter proper number for calculation
printf("Error: Enter a proper number in the range from 1 to 10000: \a");
scanf("%d",&n);
}
printf("Id\n");//prints out the id
for (c = 0; c<30; c++)
{
id[c] = c;
printf("%d: ",id[c]); //prints out the id numbers starting from 0 and ending at 29
myVar = rand() % n + 1;//prints random number sale ranging from 1 to n for each employee but needs to print once for a random employee ranging from 1 to n. And should print zeros for the rest of the employees.
printf("\t%d\n", myVar);
}
return 0;
}
檢查[如何在C中生成一個隨機數?](http://stackoverflow.com/questions/822323/how-to-generate-a-random-number-in-c)。還有一些隨機數字的答案。 – 2015-03-03 07:17:23
好的,現在指定你確切的問題是什麼(給予更多細節)。 – 2015-03-03 07:24:37
即時嘗試給隨機數字給隨機僱員(0-30)。其餘員工得到零。那爲什麼即時通訊使用for循環。但是它給每個員工一個隨機數。這就是我的問題 – nm10563 2015-03-03 07:31:44