C Program to Print Numbers Except Multiples of n


In the world of programming, C language holds a special place due to its simplicity and versatility. It allows developers to create efficient and optimized solutions for various problems. One common problem is to write a c program to print numbers except multiples of n.

In this article, we will explore a C program that accomplishes this task.

We will dive into the code, discuss its implementation, and provide a step-by-step guide for beginners. So, let’s get started!

Also read: C Program to Display Numbers From 1 to n Except 6 and 9

What is a C Program to Print Numbers Except Multiples of N?

Before we delve into the details of the program, let’s understand the problem it aims to solve.

The objective of the program is to print a series of numbers, excluding any numbers that are multiples of a given value ‘N’.

For example, if ‘N’ is 3, the program will print all numbers except the ones that are divisible by 3.

This program is particularly useful when you want to filter out specific numbers from a sequence.

Implementation of the C Program

To begin, let’s take a look at the code snippet that represents the C program to print numbers except multiples of N:

#include <stdio.h>

void printNumbersExceptMultiples(int limit, int N) {
    int i;
    for (i = 1; i <= limit; i++) {
        if (i % N != 0) {
            printf("%d ", i);

int main() {
    int limit, N;
    printf("Enter the limit: ");
    scanf("%d", &limit);
    printf("Enter the value of N: ");
    scanf("%d", &N);
    printf("Numbers except multiples of %d: ", N);
    printNumbersExceptMultiples(limit, N);
    return 0;

Now, let’s break down the code and understand its components.

Also Read: Interview Questions On C

Breaking Down the Code

The printNumbersExceptMultiples Function

The printNumbersExceptMultiples function is responsible for printing the desired sequence of numbers.

It takes two parameters: limit and N. The limit represents the upper bound of the number series, and N is the value whose multiples are to be excluded.

Inside the function, a loop iterates from 1 to the limit value. For each iteration, it checks if the current number is divisible by N using the modulo operator (%).

If the remainder is not zero, it means the number is not a multiple of N, and thus, it is printed.

The main Function

The main function serves as the entry point of the program. It prompts the user to enter the limit and the value of N.

It then calls the printNumbersExceptMultiples function, passing the provided inputs as arguments.

Finally, it returns 0, indicating successful execution of the program.

Also read: C Program to Print Multiples of 5 using do while loop

Step-by-Step Guide to Run the Program

To run the C program to print numbers except multiples of N, follow these steps:

  1. Open a text editor and create a new file.
  2. Copy and paste the code snippet into the file.
  3. Save the file with a “.c” extension, such as “print_numbers.c”.
  4. Open a terminal or command prompt and navigate to the directory where the file is saved.
  5. Compile the program using the following command: gcc print_numbers.c -o print_numbers.
  6. Run the compiled program by executing the command: ./print_numbers.
  7. Enter the limit and the value of N as prompted.
  8. The program will display the desired sequence of numbers on the console.

FAQs (Frequently Asked Questions)

Q1: What is the purpose of excluding multiples of a number in the printed sequence?

The purpose is to filter out specific numbers that are divisible by a given value. This can be useful in various scenarios, such as generating prime numbers or skipping certain values in a sequence.

Q2: Can I change the limit and N values while the program is running?

No, the program prompts the user to enter the limit and N values before execution. Once the program starts running, it expects these values to remain constant. To change them, you need to rerun the program.

Q3: What happens if I enter a negative value for the limit or N?

Entering a negative value for the limit will result in an unexpected behavior, as the loop condition relies on a positive upper bound. Similarly, a negative value for N will cause the program to exclude multiples of the negative value, which may not yield the desired outcome.

Q4: Can I modify the program to print numbers in reverse order?

Yes, you can modify the program to print numbers in reverse order by changing the loop condition in the printNumbersExceptMultiples function. Instead of starting from 1 and incrementing the value, you can start from the limit value and decrement it in each iteration.

Q5: Are there any restrictions on the range of the limit and N values?

The program can handle a wide range of values for the limit and N. However, extremely large values might consume significant memory and processing power, potentially leading to performance issues. It is recommended to use reasonable values based on your system’s capabilities.

Q6: Is it possible to print the numbers in a formatted table instead of a space-separated list?

Yes, you can modify the program to print the numbers in a formatted table by utilizing additional C programming features, such as loops and conditional statements. Formatting the output as a table involves aligning the numbers and defining column widths.


In this article, we explored a C program that prints numbers except multiples of a given value.

We discussed the program’s implementation, its components, and provided a step-by-step guide to running the program.

Additionally, we addressed some common questions to clarify the program’s behavior and potential modifications.

By understanding this program, you can enhance your C programming skills and tackle similar problems effectively.

Remember, programming is a journey of continuous learning and exploration. Keep practicing, experimenting, and pushing your boundaries to become a proficient programmer.

Also Read: Boost Python Code Efficiency: Eliminating Loops for Enhanced Performance