Home  >  Article  >  Backend Development  >  Print matrix in snake pattern in C programming

Print matrix in snake pattern in C programming

WBOY
WBOYforward
2023-09-06 23:21:06745browse

Given an array of size nxn, the program must print the elements of the array in snake mode without any changes to their original positions

Print matrix in snake pattern in C programming

Example

Input: arr[]= 100 99 98 97
   93 94 95 96
   92 91 90 89
   85 86 87 88
Output: 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85

This program will iterate through each row of the matrix and check the odd and even rows.

  • If the row is an even number, it will print the elements of that row from left to right

  • If the row is an odd number, it will print from Print the elements of the line from right to left

Algorithm

START
Step 1 -> create header files for declaring rows and column let’s say of size 4x4
Step 2 -> declare initial variables i and j and array[][] with elements
Step 3 -> Loop For i=0 and i<M and i++
   IF i%2==0
      Loop For j=0 and j<N and j++
         Print arr[i][j]
      End
   End
   Else
      Loop For j=N-1 and j>=0 and j&mdash;
         Print arr[i][j]
      End
   End
STOP

Example

Demonstration

#include<stdio.h>
#define M 4
#define N 4
int main() {
   int i,j;
   int arr[M][N] = {
      { 100, 99, 98, 97 },
      { 93, 94, 95, 96 },
      { 92, 91, 90, 89 },
      { 85, 86, 87, 88 }
   };
   for (i = 0; i < M; i++) { //for rows
      if (i % 2 == 0) {
         for (j = 0; j < N; j++) // for column
            printf("%d ",arr[i][j]);
      } else{
         for (j = N - 1; j >= 0; j--)
            printf("%d ",arr[i][j]);
      }
   }
   return 0;
}

Output

If we run the above program it will generate the following output

100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85

The above is the detailed content of Print matrix in snake pattern in C programming. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete