Mostrando entradas con la etiqueta c++. Mostrar todas las entradas
Mostrando entradas con la etiqueta c++. Mostrar todas las entradas

martes, 3 de enero de 2012

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.

/*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;
}

Programación en C con ejemplos, en inglés

lunes, 2 de enero de 2012

Codifique un programa que abra un fichero de texto del que lea datos sobre personas (el nombre y la edad). Todas aquellas personas cuya edad es superior a 20 las pasa al fichero resultado.txt (escribe su nombre y edad).

/*Codifique un programa que abra un fichero de texto del que lea datos sobre
personas (el nombre y la edad). Todas aquellas personas cuya edad es
superior a 20 las pasa al fichero resultado.txt (escribe su nombre y edad). */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

FILE *f1,*f2;
char nf1[50]="personas.txt";
char nf2[50]="resultado.txt";

int main(void) {

    f1=fopen(nf1,"r");
     if( f1 == NULL )
         {
               puts("No se puede abrir el fichero");
               exit(EXIT_FAILURE);
         }
    f2=fopen(nf2,"w+");
    if( f2 == NULL )
         {
               puts("No se puede abrir el fichero");
               exit(EXIT_FAILURE);
         }
   
char linea[128];
char clinea[128];
int iedad;
char *nombre;
char *edad;

while (fgets(linea,sizeof linea,f1) != NULL )
{
      printf("%s",linea);
      strcpy(clinea,linea);
      nombre=strtok(linea," ");
      edad=strtok(NULL," ");
      printf("Nombre:%s\n",nombre);
      printf("Edad:%s\n",edad);
      iedad=atoi(edad);
      printf("Edad:%d\n",iedad);
      if (iedad>=20) {
         fputs(clinea,f2);
      }
}
fclose(f1);
fclose(f2);
   
    system ("pause");
    /*printf("Programa finalizado. Pulse INTRO para salir");*/
    return 0;
}

Desarrolle un programa que copie un fichero en otro.

/*Desarrolle un programa que copie un fichero en otro. */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

FILE *f1,*f2;
char nf1[50];
char nf2[50];

int main(void) {

     printf("Escribe el nombre del primer fichero:");
     gets(nf1);
     printf("Escribe el nombre del segundo fichero:");
     gets(nf2);

    f1=fopen(nf1,"r");
     if( f1 == NULL )
         {
               puts("No se puede abrir el fichero");
               exit(EXIT_FAILURE);
         }
    f2=fopen(nf2,"w+");
    if( f2 == NULL )
         {
               puts("No se puede abrir el fichero");
               exit(EXIT_FAILURE);
         }
   
char linea[128];

while (fgets(linea,sizeof linea,f1) != NULL )
{
      fputs (linea,f2);
}
fclose(f1);
fclose(f2);
   
    system ("pause");
    /*printf("Programa finalizado. Pulse INTRO para salir");*/
    return 0;
}

Elabore un programa en C que escriba los números del 1 al 9 en el fichero numeros.txt.

/*Elabore un programa en C que escriba los números del 1 al 9 en el fichero
numeros.txt. */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

FILE *f;
int n;

int main(void) {

    f = fopen("numeros.txt","w+");
    if( f == NULL )
         {
               puts("No se puede abrir el fichero");
               exit(EXIT_FAILURE);
         }
    for (int i=1;i<=9;i++) {   
        fprintf(f,"%d",i);
        fprintf(f,"%s","\n");
       
    }
    system ("pause");
    /*printf("Programa finalizado. Pulse INTRO para salir");*/
    return 0;
}

Elabore un programa que abra el fichero de texto llamado numeros.txt, lea los 10 números que hay en el fichero y los coloca en un vector, y finalmente lo cierre.

/*Elabore un programa que abra el fichero de texto llamado numeros.txt, lea
los 10 números que hay en el fichero y los coloca en un vector, y
finalmente lo cierre. */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

FILE *f;
int n;

int main(void) {

    f = fopen("numeros.txt","r");
    if( f == NULL )
         {
               puts("No se puede abrir el fichero");
               exit(EXIT_FAILURE);
         }
    for (int i=0;i<10;i++) {   
        fscanf(f, "%d", &n);
        printf("%d\n",n);
    }
    system ("pause");
    /*printf("Programa finalizado. Pulse INTRO para salir");*/
    return 0;
}

Desarrolle un programa en C que lea una palabra y la escriba al revés.

/* Comentario */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define LONGMAX 100



void invertir2(char origen[],char destino[]) {
     int tamano;
     tamano=strlen(origen);
     printf("El tamano de la cadena es %d\n",tamano);
     for(int i=tamano-1;i>=0;i--) {
               printf("%c",origen[i]);
               printf("\n");
               destino[tamano-i-1]=origen[i];
               }    
}

int main(void) {
 
  /*char cadena[LONGMAX];*/
  char cadena[LONGMAX];
  char res[LONGMAX];

  printf("Escribe una palabra y pulsa INTRO\n");
  scanf("%s",cadena);
  printf("La palabra es %s\n",cadena);
  invertir2(cadena,res);
  /*res=invertir(cadena);*/
  /*printf("La palabra invertida es %s\n",invertir(cadena));*/
  printf("La palabra invertida es %s\n",res);

  system ("pause");
  /*printf("Programa finalizado. Pulse INTRO para salir");*/
  return 0;
}