Advertisement
milutinke

Kolokvijum 2: Primer 1 pointeri i malloc

Jan 17th, 2017
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.32 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void GenerateMatrix( int **iMatrix, int iNumber ) {
  5.     int iRows, iCounter1, iCounter2;
  6.  
  7.     for( iRows = 0; iRows < iNumber; iRows ++ ) {
  8.         for( iCounter1 = 0; iCounter1 < ( iNumber - ( iNumber - iRows ) ); iCounter1 ++ )
  9.             iMatrix[ iRows ][ iCounter1 ] = iNumber - iRows;
  10.  
  11.         for( iCounter2 = iCounter1; iCounter2 < iNumber; iCounter2 ++ )
  12.             iMatrix[ iRows ][ iCounter2 ] = iNumber - iCounter2;
  13.     }
  14. }
  15.  
  16. void PrintMatrix( int **iMatrix, int iNumber ) {
  17.     int iRows, iColumns;
  18.  
  19.     for( iRows = 0; iRows < iNumber; iRows ++ ) {
  20.         for( iColumns = 0; iColumns < iNumber; iColumns ++ )
  21.                 printf( "%3d", iMatrix[ iRows ][ iColumns ] );
  22.  
  23.         printf( "\n" );
  24.     }
  25. }
  26.  
  27. int main( ) {
  28.     int iNumber;
  29.     printf( "Enter the number: " );
  30.     scanf( "%d", &iNumber );
  31.  
  32.     int iIterator = 0;
  33.     int **iMatrix = ( int ** ) malloc( iNumber * sizeof( int * ) );
  34.     for( iIterator = 0; iIterator < iNumber; iIterator ++ )
  35.             iMatrix[ iIterator ] = ( int * ) malloc( iNumber * sizeof( int ) );
  36.  
  37.     GenerateMatrix( iMatrix, iNumber );
  38.     PrintMatrix( iMatrix, iNumber );
  39.  
  40.     for( iIterator = 0; iIterator < iNumber; iIterator ++ )
  41.         free( iMatrix[ iIterator ] );
  42.  
  43.     free( iMatrix );
  44.  
  45.     return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement