/*Desarrolle un programa en C al que se le pase por línea de comandos dos
parámetros. El primero puede ser \l o \u, y el segundo, el nombre de un
fichero. Si el primero de ellos es \l, se debe pasar a minúsculas todas las
mayúsculas del fichero. Si es \u, hay que convertir a mayúsculas todas las
minúsculas.*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
FILE *f1,*fres;
char nf1[50]="personas.txt";
char nf2[50]="resultado.txt";
char ch;
char ch2;
char c;
char cres;
char minamay (char c)
{
switch(c) {
case 'a': return('A');
break;
case 'b': return('B');
break;
case 'c': return('C');
break;
case 'd': return('D');
break;
case 'e': return('E');
break;
case 'f': return('F');
break;
case 'g': return('G');
break;
case 'h': return('H');
break;
case 'i': return('I');
break;
case 'j': return('J');
break;
case 'k': return('K');
break;
case 'l': return('L');
break;
case 'm': return('M');
break;
case 'n': return('N');
break;
case 'ñ': return('Ñ');
break;
case 'o': return('O');
break;
case 'p': return('P');
break;
case 'q': return('Q');
break;
case 'r': return('R');
break;
case 's': return('S');
break;
case 't': return('T');
break;
case 'u': return('U');
break;
case 'v': return('V');
break;
case 'w': return('W');
break;
case 'x': return('X');
break;
case 'y': return('Y');
break;
case 'z': return('Z');
break;
default: return(c);
break;
}
}
char mayamin (char c)
{
switch(c) {
case 'A': return('a');
break;
case 'B': return('b');
break;
case 'C': return('c');
break;
case 'D': return('d');
break;
case 'E': return('e');
break;
case 'F': return('f');
break;
case 'G': return('g');
break;
case 'H': return('h');
break;
case 'I': return('i');
break;
case 'J': return('j');
break;
case 'K': return('k');
break;
case 'L': return('l');
break;
case 'M': return('m');
break;
case 'N': return('n');
break;
case 'Ñ': return('ñ');
break;
case 'O': return('o');
break;
case 'P': return('p');
break;
case 'Q': return('q');
break;
case 'R': return('r');
break;
case 'S': return('s');
break;
case 'T': return('t');
break;
case 'U': return('u');
break;
case 'V': return('v');
break;
case 'W': return('w');
break;
case 'X': return('x');
break;
case 'Y': return('y');
break;
case 'Z': return('z');
break;
default: return(c);
break;
}
}
int main(int argc, char *argv[]) {
if (argc!=3) /* argc should be 2 for correct execution */
{
/* We print argv[0] assuming it is the program name */
printf("Uso: %s nombre de fichero\n", argv[0] );
printf("Número de parámetros: %d",argc);
}
else
{
printf("El primer parámetro es %s\n",argv[1]);
printf("El segundo parámetro es %s\n",argv[2]);
f1=fopen(argv[2],"r");
if( f1 == NULL )
{
puts("No se puede abrir el fichero");
exit(EXIT_FAILURE);
}
fres=fopen("resultado.txt","w+");
if( fres == NULL )
{
puts("No se puede abrir el fichero");
exit(EXIT_FAILURE);
}
switch( argv[1][0] )
{
case 'l': ;
do {
c=getc(f1);
printf("%d",c);
if (c==EOF) {
break;
}
else {
cres=mayamin(c);
putc(cres,fres);
}
} while (c != EOF);
break;
case 'u': ;
do {
c=getc(f1);
printf("%d",c);
if (c==EOF) {
break;
}
else {
cres=minamay(c);
putc(cres,fres);
}
} while (c != EOF);
printf("El primer parámetros es u\n");
break;
default:
printf("Parámetro no reconocido.");
break;
}
}
system ("pause");
/*printf("Programa finalizado. Pulse INTRO para salir");*/
return 0;
}
parámetros. El primero puede ser \l o \u, y el segundo, el nombre de un
fichero. Si el primero de ellos es \l, se debe pasar a minúsculas todas las
mayúsculas del fichero. Si es \u, hay que convertir a mayúsculas todas las
minúsculas.*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
FILE *f1,*fres;
char nf1[50]="personas.txt";
char nf2[50]="resultado.txt";
char ch;
char ch2;
char c;
char cres;
char minamay (char c)
{
switch(c) {
case 'a': return('A');
break;
case 'b': return('B');
break;
case 'c': return('C');
break;
case 'd': return('D');
break;
case 'e': return('E');
break;
case 'f': return('F');
break;
case 'g': return('G');
break;
case 'h': return('H');
break;
case 'i': return('I');
break;
case 'j': return('J');
break;
case 'k': return('K');
break;
case 'l': return('L');
break;
case 'm': return('M');
break;
case 'n': return('N');
break;
case 'ñ': return('Ñ');
break;
case 'o': return('O');
break;
case 'p': return('P');
break;
case 'q': return('Q');
break;
case 'r': return('R');
break;
case 's': return('S');
break;
case 't': return('T');
break;
case 'u': return('U');
break;
case 'v': return('V');
break;
case 'w': return('W');
break;
case 'x': return('X');
break;
case 'y': return('Y');
break;
case 'z': return('Z');
break;
default: return(c);
break;
}
}
char mayamin (char c)
{
switch(c) {
case 'A': return('a');
break;
case 'B': return('b');
break;
case 'C': return('c');
break;
case 'D': return('d');
break;
case 'E': return('e');
break;
case 'F': return('f');
break;
case 'G': return('g');
break;
case 'H': return('h');
break;
case 'I': return('i');
break;
case 'J': return('j');
break;
case 'K': return('k');
break;
case 'L': return('l');
break;
case 'M': return('m');
break;
case 'N': return('n');
break;
case 'Ñ': return('ñ');
break;
case 'O': return('o');
break;
case 'P': return('p');
break;
case 'Q': return('q');
break;
case 'R': return('r');
break;
case 'S': return('s');
break;
case 'T': return('t');
break;
case 'U': return('u');
break;
case 'V': return('v');
break;
case 'W': return('w');
break;
case 'X': return('x');
break;
case 'Y': return('y');
break;
case 'Z': return('z');
break;
default: return(c);
break;
}
}
int main(int argc, char *argv[]) {
if (argc!=3) /* argc should be 2 for correct execution */
{
/* We print argv[0] assuming it is the program name */
printf("Uso: %s nombre de fichero\n", argv[0] );
printf("Número de parámetros: %d",argc);
}
else
{
printf("El primer parámetro es %s\n",argv[1]);
printf("El segundo parámetro es %s\n",argv[2]);
f1=fopen(argv[2],"r");
if( f1 == NULL )
{
puts("No se puede abrir el fichero");
exit(EXIT_FAILURE);
}
fres=fopen("resultado.txt","w+");
if( fres == NULL )
{
puts("No se puede abrir el fichero");
exit(EXIT_FAILURE);
}
switch( argv[1][0] )
{
case 'l': ;
do {
c=getc(f1);
printf("%d",c);
if (c==EOF) {
break;
}
else {
cres=mayamin(c);
putc(cres,fres);
}
} while (c != EOF);
break;
case 'u': ;
do {
c=getc(f1);
printf("%d",c);
if (c==EOF) {
break;
}
else {
cres=minamay(c);
putc(cres,fres);
}
} while (c != EOF);
printf("El primer parámetros es u\n");
break;
default:
printf("Parámetro no reconocido.");
break;
}
}
system ("pause");
/*printf("Programa finalizado. Pulse INTRO para salir");*/
return 0;
}
No hay comentarios:
Publicar un comentario