Guest User

Untitled

a guest
Jan 23rd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.62 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. void checkChar( unsigned short int *, char, char );
  4. void checkChar( unsigned short int * charCounter, char lineChar, char spezChar ){
  5.     if( lineChar == spezChar ){
  6.         *charCounter = *charCounter + 1;
  7.     }
  8. }
  9. int main( void ){
  10.     char filename[ 128 ];
  11.     char line[ 256 ];
  12.     short int i, j;
  13.     unsigned short int rBracketO, rBracketC, qBracketO, qBracketC, tBracketO, tBracketC;
  14.     FILE * file;
  15.  
  16.     rBracketO = rBracketC = qBracketO = qBracketC = tBracketO = tBracketC = 0;
  17.     printf( "file to check:" );
  18.     fgets( filename, 128, stdin );
  19.     for( i = 0; i < sizeof filename; i++ ){
  20.         if( filename[ i ] == '\n' ){
  21.             filename[ i ] = '\0';
  22.             break;
  23.         }
  24.     }
  25.    
  26.     file = fopen( filename, "r" );
  27.     if( file != NULL ){
  28.         for( i = 1; fgets( line, sizeof line, file ); i++ ){
  29.             for( j = 0; j < sizeof line; j++ ){
  30.                 /* brackets */
  31.                 checkChar( & rBracketO, line[ j ], '(' );            
  32.                 checkChar( & rBracketC, line[ j ], ')' );            
  33.                 checkChar( & qBracketO, line[ j ], '[' );            
  34.                 checkChar( & qBracketC, line[ j ], ']' );            
  35.                 checkChar( & tBracketO, line[ j ], '{' );            
  36.                 checkChar( & tBracketC, line[ j ], '}' );            
  37.             }
  38.             printf( "Line %d: %s\n", i, line );
  39.         }
  40.     printf( "(:%d, ):%d, [:%d, ]:%d, {:%d, }:%d\n", rBracketO, rBracketC, qBracketO, qBracketC, tBracketO, tBracketC );
  41.     }else {
  42.         perror( filename );
  43.     }
  44.  
  45.  
  46.     return 0;
  47. }
Add Comment
Please, Sign In to add comment