School assignment exploring multiple threads and concurrency in C