Circular Buffer Simulation

Medium Queue: Applications PRO
🔒 Login to Unlock

Problem Statement

Write a C program to simulate a circular buffer of fixed capacity, overwriting oldest data when full upon new enqueues.

Input Format

First line contains capacity and number of operations. Subsequent lines contain operations (1 val for write, 2 for read/dequeue).

Output Format

Print read values separated by spaces.

Constraints

1 <= capacity <= 50, 1 <= ops <= 100

Sample Input

3 5
1 10
1 20
1 30
2
1 40

Sample Output

10

Explanation

Maintain head and tail with fixed capacity. If buffer is full on write, advance the head pointer to overwrite the oldest element.

Starter Code

#include <stdio.h>
#include <stdlib.h>

int main() {
    int cap, ops;
    if (scanf("%d %d", &cap, &ops) == 2) {
        // Write your code here for circular buffer simulation
    }
    return 0;
}

Limits

  • Time Limit: 1s
  • Memory Limit: 256MB

Embedded C Programming

Updated: March 15, 2026
Intermediate

Embedded systems rely on efficient low-level programming to interact directly with hardware. In this course, you will learn how to write practical Embedded C programs used in real microcontroller-based systems. Rather than focusing only on theory, this course follows a practice-driven approach. Each lesson includes hands-on coding exercises that simulate real firmware development tasks used