🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (178K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
Introduction
The srand() function in C is a standard library function that initializes the random number generator used by the rand() function. It is part of the C standard library (stdlib.h). This function is commonly used to ensure that the sequence of random numbers generated by rand() is different each time the program is run.
srand() Function Syntax
The syntax for the srand() function is as follows:
void srand(unsigned int seed);
Parameters:
seed: An unsigned integer value used to seed the random number generator.
Returns:
- The
srand()function does not return a value.
Examples
Initializing the Random Number Generator with a Constant Seed
To demonstrate how to use srand() to initialize the random number generator with a constant seed, we will write a simple program.
Example
#include <stdio.h>
#include <stdlib.h>
int main() {
// Initialize the random number generator with a constant seed
srand(1234);
// Generate a random number
int random_number = rand();
// Print the generated random number
printf("Random number: %d\n", random_number);
return 0;
}
Output:
Random number: [some random number]
Initializing the Random Number Generator with the Current Time
To ensure a different sequence of random numbers each time the program is run, you can initialize the random number generator with the current time.
Example
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
// Initialize the random number generator with the current time
srand(time(NULL));
// Generate a random number
int random_number = rand();
// Print the generated random number
printf("Random number: %d\n", random_number);
return 0;
}
Output:
Random number: [some random number]
Real-World Use Case
Generating Random Numbers for a Lottery System
In real-world applications, the srand() function can be used to generate random numbers for systems like lotteries, where it is essential to have a different sequence of numbers each time.
Example
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
// Initialize the random number generator with the current time
srand(time(NULL));
// Generate and print six random lottery numbers between 1 and 49
printf("Lottery numbers: ");
for (int i = 0; i < 6; i++) {
int lottery_number = (rand() % 49) + 1;
printf("%d ", lottery_number);
}
printf("\n");
return 0;
}
Output:
Lottery numbers: [six random numbers between 1 and 49]
Conclusion
The srand() function is essential for initializing the random number generator used by the rand() function in C. By providing a seed value, you can control the sequence of random numbers generated. Using the current time as a seed value ensures a different sequence of random numbers each time the program is run, making it suitable for applications that require randomness.
My Top and Bestseller Udemy Courses. The sale is going on with a 70 - 80% discount. The discount coupon has been added to each course below:
Build REST APIs with Spring Boot 4, Spring Security 7, and JWT
[NEW] Learn Apache Maven with IntelliJ IDEA and Java 25
ChatGPT + Generative AI + Prompt Engineering for Beginners
Spring 7 and Spring Boot 4 for Beginners (Includes 8 Projects)
Available in Udemy for Business
Building Real-Time REST APIs with Spring Boot - Blog App
Available in Udemy for Business
Building Microservices with Spring Boot and Spring Cloud
Available in Udemy for Business
Java Full-Stack Developer Course with Spring Boot and React JS
Available in Udemy for Business
Build 5 Spring Boot Projects with Java: Line-by-Line Coding
Testing Spring Boot Application with JUnit and Mockito
Available in Udemy for Business
Spring Boot Thymeleaf Real-Time Web Application - Blog App
Available in Udemy for Business
Master Spring Data JPA with Hibernate
Available in Udemy for Business
Spring Boot + Apache Kafka Course - The Practical Guide
Available in Udemy for Business
Comments
Post a Comment
Leave Comment