Curso de Programación en C/Prog111
Ir a la navegación
Ir a la búsqueda
Prog111
#include <stdio.h>
#include <stdlib.h> // prototipo de exit()
#include <string.h> // prototipo de strcpy() y strcat()
#define LEN 40
int main( int argc, char *argv[] )
{
FILE *IngresoArchivo,
*SaliddaArchivo;
int ch,
Contar = 0;
char ArchivoNombre[LEN];
if (argc < 2)
{
fprintf( stderr, "Usado: %s ArchivoNombre\n", argv[0] );
exit(1);
}
if( ( IngresoArchivo = fopen( argv[1], "r" ) ) == NULL )
{
fprintf( stderr, "No puedo abrir el archivo \"%s\"\n",
argv[1]);
exit(2);
}
strncpy( ArchivoNombre, argv[1], LEN - 5 );
ArchivoNombre[LEN - 5] = '\0';
strcat( ArchivoNombre,".red" );
if( ( SaliddaArchivo = fopen( ArchivoNombre, "w" ) ) == NULL )
{
fprintf( stderr, "No puedo crear el archivo de salida.\n" );
exit(3);
}
while( ( ch = getc( IngresoArchivo ) ) != EOF )
if( !( Contar++ %3 ) )
putc( ch, SaliddaArchivo );
if( fclose( IngresoArchivo ) != 0 || fclose( SaliddaArchivo ) != 0 )
fprintf( stderr, "Error: No puedo cerrar los archivos\n" );
return 0;
}Resultado
[rrc@llawyr CClase]$ gcc -Wall -o Prog111 Prog111.c [rrc@llawyr CClase]$ cat Prog111.infile So even Eddy came oven ready. [rrc@llawyr CClase]$ ./Prog111 Prog111.infile [rrc@llawyr CClase]$ cat Prog111.infile.red Send money [rrc@llawyr CClase]$