ฟังก์ชัน rand()
ฟังก์ชัน rand() ใช้สำหรับสร้างเลขสุ่มแบบปลอม (pseudo-random number) ฟังก์ชันนี้คืนค่าเป็นจำนวนเต็ม โดยมีช่วงค่าตั้งแต่ 0 ถึง RAND_MAX ซึ่งโดยทั่วไปจะมีค่าเท่ากับ 32767
ไวยากรณ์
int rand(void);
ตัวอย่างการใช้งาน rand()
#include <stdio.h>
#include <stdlib.h>
int main() {
printf("%d\n", rand());
printf("%d", rand());
return 0;
}
ผลลัพธ์
1804289383 846930886
ฟังก์ชัน srand()
ฟังก์ชัน srand() ใช้สำหรับกำหนดค่าเริ่มต้น (seed) ให้กับตัวสร้างเลขสุ่มของ rand() ฟังก์ชันนี้ไม่คืนค่าอะไรเลย (void)
ไวยากรณ์
void srand(unsigned int number);
ตัวอย่างการใช้งาน srand()
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand(time(NULL)); // ใช้เวลาปัจจุบันเป็น seed
printf("%d\n", rand());
srand(12); // ใช้ค่าคงที่เป็น seed
printf("%d", rand());
return 0;
}
ผลลัพธ์
1432462941 1687063760
หมายเหตุ: การใช้ srand(time(NULL)) จะทำให้ได้ลำดับเลขสุ่มที่แตกต่างกันทุกครั้งที่รันโปรแกรม ในขณะที่ใช้ค่า seed คงที่จะได้ลำดับเลขสุ่มเดิมซ้ำๆ ทุกครั้ง