C Program to Create Multiplication Table

Multiplication table is a table of products of decimal sequence of numbers. For example, a multiplication table of 5 by 5 contains a top most row with values ranging from 1 to 5 and a left most row with values ranging from 1 to 5. The middle cells contains the algebraic product of the corresponding value in the top row and left most row. Following table is a 5x5 multiplication table,

  1 2 3 4 5
1 1 2 3 4 5
2 2 4 6 8 10
3 3 6 9 12 15
4 4 8 12 16 20
5 5 10 15 20 25

The following c program prints an n by n multiplication table. For example, if user inputs a value of 10, multiplication tables of all numbers from 1 to 10 are printed.

C Program to Create n by n Multiplication Table

We use the scanf and printf functions to generate multiplication table in c.

#include <stdio.h>

// Multiplication table generator
void printMultTable(int tableSize) {
  printf("      ");
  for(int i = 1; i<=tableSize;i++ ) {
    printf("%4d",i);
  }
  printf("\n");
  for(int i=0;i<tableSize;i++) {
    printf("----");
  }
  printf("--------\n");
  for(int i = 1 ;i<=tableSize;i++) {
      // print left most column first
      printf("%4d |",i);
      for(int j=1;j<=tableSize;j++) {
          printf("%4d",i*j);
      }
      printf("\n");
  }
}

int main() {
  printf("Please enter multiplication table size: ");
  int tableSize;
  scanf("%d",&tableSize);
  printMultTable(tableSize);
  return 0;
}

The output for the program for an input of 6 is given below,

Please enter multiplication table size: 6
         1   2   3   4   5   6
--------------------------------
   1 |   1   2   3   4   5   6
   2 |   2   4   6   8  10  12
   3 |   3   6   9  12  15  18
   4 |   4   8  12  16  20  24
   5 |   5  10  15  20  25  30
   6 |   6  12  18  24  30  36

Students memorize the multiplication tables of numbers from 1 to 10. Using these tables it is possible to multiply large numbers without a calculator.

C Program to Generate Multiplication Table for a Number

The following c program prints the multiplication table of a given number. This table is actually a subset of the table we created earlier. Here we print the column corresponding to the given number in the first row.

#include <stdio.h>

// Multiplication table for a number
void printTable(int number) {
  for(int i = 1; i<=10;i++ ) {
    printf("%dx%d=%d\n",i,number,i*number);
  }
}

int main() {
  printf("Please enter a number from 1 to 10: ");
  int number;
  scanf("%d",&number);
  printTable(number);
  return 0;
}

The output from the c program is given below,

Please enter a number from 1 to 10: 9
1x9=9
2x9=18
3x9=27
4x9=36
5x9=45
6x9=54
7x9=63
8x9=72
9x9=81
10x9=90