C Programming Tutorial

 
 
 
 
       # include<stdio.h>
       void display(int [][3]);
       void main()
       {
           int c;
           void func1();
           void func2();
           void func3();
           void func4();
           void func5();
           clrscr();
             printf(\"\\n- : Matrix Manipulation Functions (for 3 X 3 Matrix) : -\");
           printf(\"\\n-------------------------------------\");
           printf(\"\\n Matrix Addition            : 1\");
           printf(\"\\n Matrix Subtraction         : 2\");
           printf(\"\\n Matrix Multiplication      : 3\");
           printf(\"\\n Find Transpose Matrix      : 4\");
           printf(\"\\n Matrix is Symmetric or not : 6\");
           printf(\"\\n Enter Your Choice          : \");
           scanf(\"%d\",&c);
           switch(c)
           {
               case 1:
                   func1();
                   break;
               case 2:
                   func2();
                   break;
               case 3:
                   func3();
                   break;
               case 4:
                   func4();
                   break;
               case 5:
                   func5();
                   break;
               default:
                   printf(\"\\nInvalid Choice\");
           }
           getch();
       }




       void func1()
       {
           int x[3][3],y[3][3],z[3][3];
           void getmatrix(int [][3]);
           void addition(int [][3],int [][3],int [][3]);
           clrscr();
           getmatrix(x);
           getmatrix(y);
           addition(x,y,z);
           printf(\"\\n - : Matrix 1: - \\n\");
           display(x);
           printf(\"\\n - : Matrix 2: - \\n\");
           display(y);
           printf(\"\\n - : Matrix Addition (Result): - \\n\");
           display(z);
       }
       void getmatrix(int t[][3])
       {
           int i,j;
           for(i=0;i<3;i++)
           {
               for(j=0;j<3;j++)
               {
                   printf(\"Enter element [%d][%d] : \",i,j);
                   scanf(\"%d\",&t[i][j]);
               }
           }
       }
       void addition(int p[][3],int q[][3],int r[][3])
       {     int i,j;
           for(i=0;i<3;i++)
           {      for(j=0;j<3;j++)
                   r[i][j]=p[i][j]+q[i][j];
           }
       }
       void func2()
       {
           int x[3][3],y[3][3],z[3][3];
           void getmatrix(int [][3]);
           void subtraction(int [][3],int [][3],int [][3]);
           clrscr();
           getmatrix(x);
           getmatrix(y);
           subtraction(x,y,z);
           printf(\"\\n - : Matrix 1: - \\n\");
           display(x);
           printf(\"\\n - : Matrix 2: - \\n\");
           display(y);
           printf(\"\\n - : Matrix Subtraction (Result): - \\n\");
           display(z);
       }
       void subtraction(int p[3][3],int q[3][3],int r[3][3])
       {
           int i,j;
           for(i=0;i<3;i++)
           {
               for(j=0;j<3;j++)
                   r[i][j]=p[i][j]-q[i][j];
           }
       }
       void func3()
       {
           int x[3][3],y[3][3],z[3][3];
           void getmatrix(int [][3]);
           void multiplication(int [][3],int [][3],int [][3]);
           clrscr();
           getmatrix(x);
           getmatrix(y);
           multiplication(x,y,z);
           printf(\"\\n - : Matrix 1: - \\n\");
           display(x);
           printf(\"\\n - : Matrix 2: - \\n\");
           display(y);
           printf(\"\\n - : Matrix Multiplication (Result): - \\n\");
           display(z);
       }
       void multiplication(int p[][3],int q[3][3],int r[3][3])
       {
           int i,j,k;
           for(i=0;i<3;i++)                 
//condition i< total row of matrix1
           {
               for(j=0;j<3;j++)         
//condition i< total col of matrix1 or
              //condition i< total row of matrix2
{
                   r[i][j]=0;
                   for(k=0;k<3;k++) //condition i< total col of matrix2
                       r[i][j]=r[i][j]+(p[i][j]*q[j][k]);
               }
           }
       }
       void func4()
       {
           int x[3][3],y[3][3];
           void getmatrix(int [][3]);
           void transpose(int [][3],int [][3]);
           clrscr();
           getmatrix(x);
           transpose(x,y);
           printf(\"\\n - : Matrix 1: - \\n\");
           display(x);
           printf(\"\\n - : Transpose Matrix : - \\n\");
           display(y);
       }
       void transpose(int p[][3],int q[][3])
       {
           int i,j;
           for(i=0;i<3;i++)
           {
               for(j=0;j<3;j++)
                   q[i][j]=p[j][i];
           }
       }
       void func5()
       {
           int x[3][3],y[3][3];
           void getmatrix(int [][3]);
           void transpose(int [][3],int [][3]);
           int symmetric(int [][3],int [][3]);
           clrscr();
           getmatrix(x);
           transpose(x,y);
           if(symmetric(x,y)==1)
               printf(\"\\nMatrix is Symmetric\");
           else
               printf(\"\\nMatrix is Not Symmetric\");
       }
       int symmetric(int p[][3],int q[][3])
       {
           int i,j;
           for(i=0;i<3;i++)
           {
               for(j=0;j<3;j++)
               {
                   if(q[i][j]!=p[i][j])
                       return 0;
               }
           }
           return 1;
       }
       void display(int m[][3])
       {
           int i,j;
           printf(\"\\n\\n\");
           for(i=0;i<3;i++)
           {
               for(j=0;j<3;j++)
                   printf(\"%d  \",m[i][j]);
               printf(\"\\n\");
           }
       }