miércoles, 27 de junio de 2012

funcion para borrar dentro de una fila

La siguiente funcion realiza el borrado dentro de la fila

void borrar(void)
{
 char* q;
 q=crecup();
 if(q==NULL)
 {
 printf("No hay datosn");
 return;
 }
 printf("Este es el dato recuperado y borrado: Dato numero %d: %s\n",rpos+1,q);
 free (q);
}

martes, 26 de junio de 2012

Colas o filas

SE MUESTRA A CONTINUACION LOS METODOS PARA ALMACENAR Y PARA RECUPERAR LOS DATOS EN UNA FILA. TAMBIEN SE MOSTRARA EL METODO MAIN

FUNCION PARA ALMACENAR



void calmac(char *q)
{
  if (spos==MAX) // Control de llenado de la cola
  {
    printf("n La cola está llenan");
    return;
   }
   p[spos]=q;
   spos ++;
 }

FUNCION PARA RECUPERAR



char *crecup(void)
{
 if(rpos==spos)
 {
 printf("n No hay datosn");
 return NULL;
 }
 rpos ++;
 return p[rpos-1];
}



METODO MAIN


int main(void)
{
  char s[80];
  register int t;
  spos=0;             /* inicializacion de indicadores y de cola */
  rpos=0;
  for(t=0;t<MAX;++t) p[t]=NULL;

//Menu
  for(;;){
   printf("\nIntroducir, Listar, Borrar o Salir\n");
   printf("(escribir la acci¢n deseada):\n");
   gets(s);
   *s=toupper(*s);
   switch(*s){
     case 'I': intro(); break;
     case 'L': revisar();break;
     case 'B': borrar(); break;
     case 'S': exit(0);
      }
    }
getch();
 return 0;
}


martes, 19 de junio de 2012

codigo pila en C

Ejemplo de una pila con arreglos

#define MAX 5
#include<stdio.h>
#include<conio.h>
void push(int i);
int pop(void);
int top=0;
int pila[MAX];
main()
{
     
      push(5);
      push(3);
      push(9);
printf("Valor %d\n", pop());
printf("Valor %d\n", pop());
printf("Valor %d\n", pop());
      getch();
     
     
     
      }

void push(int i)
{
     if(top>=MAX)
     {
                 printf("Pila Llena");
                 return;             
                
                
                 }
     pila[top]=i;
     top++;
    
    
     }
int pop(void)
{
    top--;
    if(top<0)
    {
    printf("Pila vacía");
    return(0);
             }
    return pila[top];
   
   
    }

Funciones push y pop

Las siguientes funciones se utilizan para poder implementar una pila

void push(int i)
{
     if(top>=MAX)
     {
                 printf("Pila Llena");
                 return;             
                
                
                 }
     pila[top]=i;
     top++;
    
    
     }


int pop(void)
{
    top--;
    if(top<0)
    {
    printf("Pila vacía");
    return(0);
             }
    return pila[top];
   
   
    }

viernes, 8 de junio de 2012

CODIGO PARA GUARDAR DATOS EN UN ARCHIVO DE TEXTO

#include<conio.h>
#include<stdio.h>
#include<io.h>
#include<stdlib.h>
main()
{
FILE *fp;
char c[80];
int t;
if((fp=fopen("prueba.txt","w"))==NULL)
{
  printf("Error de escritura");
  exit(1);
}
printf("Introduce una cadena y un numero");
fscanf(stdin,"%s %d",c,&t);
fprintf(fp,"%s %d",c,t);
fclose(fp);
if((fp=fopen("prueba.txt","r"))==NULL)
{
  printf("Error de escritura");
  exit(1);
}
fscanf(fp,"%s %d",c,&t);
fprintf(stdout,"%s %d",c,t);
fclose(fp);
getch();
return(0);
}