title: Matrix multiplication using transpose in C
body: <p>I am a beginner in C.
  I was trying to write some code that would carry out matrix multiplication using transpose. 
  Is there any way I can improve the code in terms of execution time?</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include &lt;stdlib.h&gt;
  #include &lt;math.h&gt;
  #include &lt;assert.h&gt;
  #include &lt;time.h&gt;
  
  int main()
  {   
  
    int a[3][3] = {{1,0, 1}, {2, 2, 4},{1, 2, 3}};
  
          int b[3][3] ={ { 2, 3, 1}, { 6, 6, 2 }, { 9, 9, 0 } };
          int result[3][3];
          double tmp;
          int i,j,k;
          for (i=0; i&lt;3; i++) //i = col
            {
              for (k=0; k&lt;3; k++)
              {
                tmp = a[i][k];
                for (j=0; j&lt;3; j++) //j = row
                {
                  result[i][j] += tmp * b[k][j];
                  printf("%d\t",result[i][j]);
                }
              }
            }
  }
  </code></pre>