Utente:Alfreddo/bozza1
Vai alla navigazione
Vai alla ricerca
<nowiki>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXLEN 25
#define MAX 32
void shuffle(char array[][MAXLEN], int max);
int main( int argc, char *argv[] )
{
int q; /*counter*/
char zazza[MAX][MAXLEN];
int i_max = 0;
/*apro file*/
FILE *inPtr;
FILE *outPtr;
if( argc != 3 )
{
printf("inserire 3 valori\n");
}
else{
if( (inPtr = fopen( argv[1], "r" )) == NULL )
{
printf("impossibile aprire il primo file\n");
}
else
{
if( (outPtr = fopen( argv[2], "w" )) == NULL )
{
printf("impossibile aprire il primo file\n");
}
else
{
/*fine inizializzazione*/
/*inizio programma*/
fprintf(outPtr, "Quarti di finale campionato 2006/2007\n");
fprintf(outPtr, "Andata\n\n");
while(!feof(inPtr))
{
i_max++;
fgets(zazza[i_max], MAXLEN, inPtr);
strcpy(&zazza[i_max][0], &zazza[i_max][2]);
}
/*controllo che siano in numero pari*/
if(i_max % 2 != 0)
{
printf( "errore\n" );
return 1;
}
shuffle( zazza, i_max);
for(q = 1; q <= (i_max / 2); q++ )
{
fprintf( outPtr, "%s - %s\n", zazza[ q ], zazza[ q + (i_max / 2) ]);
}
fprintf(outPtr, "Ritorno\n\n");
for(q = 1; q <= (i_max / 2); q++ )
{
fprintf( outPtr, "%s - %s\n", zazza[ q + (i_max / 2) ], zazza[ q ]);
}
/*fine programma*/
fclose( outPtr );
}/*chiudo terzo else*/
fclose( inPtr );
}/*chiudo secondo else*/
}/*chiudo primo else*/
return 0;
}/*fine file*/
void shuffle(char array[][MAXLEN], int max)
{
int i;
char temp[MAXLEN];
for(i=1; i <= max; i++)
{
int j= 1 + ( rand() % max );
strcpy(temp, array[i]);
strcpy(array[i], array[j]);
strcpy(array[j], temp);
}
}
</nowiki>