Archivos 1 problema

dianilla
03 de Enero del 2005
Hola, como estan, miren resulta que mi maestra nos dejo solo 1 problema pues esta un poco complicado al menos para mi.. Qusiera porfavor que me ayudaran a resolverlo, yo lo estoy haciendo pero quisiera compararlos para checar mis errores. SI quieren no hagan todo el programa tan solo quisiera ver como van los procedimientos, sobre todo el de consultas, el de bajas y reporte... Yp ya tengo delcarados los void y ya tengo el menu con el switch, ocupo solo ver como van esos procedimientos utilizando do while. aqui les va lo unico que llevo

#include <iostream.h>
#include <conio.h>
#include <stdio.h>

void crear();
void altas();
void bajas();
void consultas();
void modificaciones();
void reporte();


struct{
int clave;
char nom[45],dom[60],RFC[20];
char tel[15],correo[30];
}clientes;

FILE*archivodisco;

main()
{
int opc;

printf("A R C H I V O D E C L I E N T E S");endl;
printf("1.Crear archivo de clientes.");
printf("2.Altas de clientes.");
printf("3.Bajas de clientes.");
printf("4.Consultas de clientes.");
printf("5.Modificaciones de clientes.");
printf("6.Reporte de clientes.");
printf("7.Terminar programa.");
scanf("%d", &opc);

switch (opc)
{
case 1: crear();
break;
case 2: altas();
break;
case 3: bajas();
break;
case 4: consultas();
break;
case 5: modificaciones();
break;
case 6: reporte();
break;
default:printf("O p c i o n n o v a l i d a");
break;
};
}

void crear()

ME FALTA ESTE PROCEDIMIENTO TAMBIEN... PERO ESTE CREO SABER MAS O MENOS COMO.
void altas()
{
clrscr();
char opc;
do
{
printf("Dame la clave:");
scanf("%d", &clave);
printf("Dame el nombre:");
gets(nom);
printf("Dame el RFC:");
scanf("%s", &RFC);
printf("Dame el telefono:");
scanf("%s", &tel);
printf("Dame la direccion:");
scanf("%s", &dom);
printf("Dame el correo electronico:");
scanf("%s", &correo);

printf("¿Desea dar de alta otro cliente?( si=1 y no=2 ).");
opc=getchar();
}
while((opc=='s')||(opc=='s');
while(opc==1);
}



MUCHAS GRACIAS POR SU AYUDA...
DIANA

Juan Carlos
03 de Enero del 2005
Ok, yo ya una vez entreje ese programa, deja lo busco y te lo mando a tu email

ryck
03 de Enero del 2005
yo lo tengo el problema es que es con clases, libreria "fstream.h" y estoy usando Templates para evitarme hacer bases de datos para cada uno de los archivos, si lo quieres avisame

angelucha84
03 de Enero del 2005
Diana aki te mando el codigo de mi proyecto son altas, bajas, consultas y modificaciones utilizando archivos sirve bien chekalo sale?


/*
Instituto Tecnologico Superior de Chapala
Alumnos: Alicia Ang&#8218;lica V zquez Rios
Ana Elena Espirito Espinoza
Cynthia Nayeli Isabel Medina Conchas
Materia: An lisis de Sistemas
Maestro: Ing. Roberto Maga¤a Preciado
Carrera: Ingenieria en Sistemas Computacionales
Proyecto: Nuestro proyecto esta enfocado a la vida real.
En este proyecto hicimos un sistema para una joyeria en la cual se maneja lo que es:
*Altas, Bajas, Modificaciones,B£squeda y Mostrar en Pantalla los productos de productos
*Altas, Bajas, Modificaciones, B£squeda Los proveedores
*Tambien utilizamos lo que es 3 archivo que son Temp.txt,proveedo.txt,kafri.txt
para el manejo de archivos secuenciales


*/

#include<string.h>
#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<stdlib.h>
#define MODELO 0
#define ARGOLLA 1
#define EMPRESA 0
#define DOMICILIO 1
#define COLONIA 2
#define CP 3
#define LUGAR 4
#define TEL 5
#define EMAIL 6
#define INIEMPR 7
void cuadro (int, int, int, int);
void cuadro2 (int, int, int, int);
int i,N;
void xyt(int x,int y,char texto[78])
{
gotoxy(x,y);
cprintf(texto);
}
void centxt(char texto[78],int j)
{
gotoxy(40-strlen(texto)/2,j);
cprintf(texto);
}

void color(int i,int j)
{
textcolor(i);
textbackground(j);
}


void cuadro(int x,int y,int x1,int y1)
{
for (i=x; i<=x1; i++)
{
gotoxy(i,y); puts("Í");
gotoxy(i,y1);puts("Í");
}
for (i=y; i<=y1; i++)
{
gotoxy(x,i); puts("º");
gotoxy(x1,i);puts("º");
}
gotoxy(x,y); puts("É");
gotoxy(x1,y1); puts("¼");
gotoxy(x1,y); puts("»");
gotoxy(x,y1); puts("È");
}

void cuadro2(int x,int y,int x1,int y1)
{
for (i=x; i<=x1; i++)
{
gotoxy(i,y); puts("Í");
gotoxy(i,y1);puts("Í");
}
for (i=y; i<=y1; i++)
{
gotoxy(x,i); puts("²");
gotoxy(x1,i);puts("²");
}
gotoxy(x,y); puts("É");
gotoxy(x1,y1); puts("¼");
gotoxy(x1,y); puts("»");
gotoxy(x,y1); puts("È");
}



void separa(char registro[], char campo[][1024], char separador)
{
char temp[255];
int i,j;

for(i=0,j=0;i<8; i++)
{
campo[i][0]='';
for(j=j;registro[j] && registro[j]!=separador ;j++)
{
sprintf(temp,"%s%c",campo[i],registro[j]);
strcpy(campo[i],temp);
}
j++;
}
}
void altasp()
{
FILE *fp;
char nombre[228],dom[228],colonia[128],cp[28],lugar[128],tel[28],email[128],iniempr[128];
char oa;
do
{
clrscr();
cuadro(1,1,79,24);
centxt("A L T A D E P R O V E E D O R ",2);
//abrir el archivo


fp=fopen("proveedores.txt","a");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo proveedores.txt para a¤adir",13);
getch();
exit(0);
}
//lectura de datos
xyt(5,5,"Nombre de la Empresa : ");
gets(nombre);
xyt(5,7,"Domicilio : ");
gets(dom);
xyt(5,9,"Colonia : ");
gets(colonia);
xyt(5,11,"C.P. : ");
gets(cp);
xyt(5,13,"Ciudad : ");
gets(lugar);
xyt(5,15,"Telefono : ");
gets(tel);
xyt(5,17,"E-mail : ");
gets(email);
xyt(5,19,"Inicio de la Empresa : ");
gets(iniempr);
centxt("¨Desea dar de alta otro Proveedor ? ",21);
oa=getche();
//grabar al archivo
fprintf(fp,"%s|%s|%s|%s|%s|%s|%s|%s|n",nombre,dom,colonia,cp,lugar,tel,email,iniempr);
fclose(fp);
}while(toupper(oa)=='S');
}

//darde baja a los proveedores
void bajasp()
{
FILE *fp,*fp2;
int i,ban;
char linea[1024],ob,borrar[228],registro[8][1024];
char os;

do
{
clrscr();
cuadro(1,1,79,24);
centxt("B A J A S D E P R O V E E D O R",2);
fp=fopen("proveedores.txt","r");
if(fp==NULL)
{
centxt("¨ERROR al abrir el archivo proveedores.txt para lectura",13);
getch();
exit(0);
}
fp2=fopen("temp.txt","w");
if(fp2==NULL)
{
centxt("¨ERROR al abrir el archivo temp.txt para escritura",13);
getch();
exit(0);
}
xyt(5,6,"Introduce el nombre del archivo a borrar : ");
gets(borrar);
ban=0;
while(fgets(linea,1024,fp))
{
separa(linea,registro,'|');
if(!strcmp(borrar,registro[0]))
{
ban=1;
centxt("Registro encontrado : ",8);
for(i=EMPRESA;i<=INIEMPR;i++)
xyt(7,i+10,registro[i]);
centxt("¨Desea eliminarlo? ",19);
ob=getche();
if(toupper(ob)=='S')
{
centxt("Proveedor Eliminado",21);
}
else
{
fprintf(fp2,"%s",linea);
centxt("Proveedor NO eliminado",21);
}
}
else
{
fprintf(fp2,"%s",linea);
}
}
if(ban==0) centxt("Proveedor NO encontrado",13);
//redefinir archivos
fclose(fp);
fclose(fp2);
remove("proveedores.txt");
rename("temp.txt","proveedores.txt");
centxt("¨Desea realizar otra baja?",23);
os=getche();
}while(toupper(os)=='S');
}

//Modificar uno o mas elementos, hasta los que desee,jeje
void modificacionesp()
{
FILE *fp,*fp2;
int i,ban;
char linea[1024],om,modi[228],registro[8][1024],os;
char nombre[228],dom[228],colonia[128],cp[28],lugar[128],tel[28],email[128],iniempr[128];
do
{
clrscr();
cuadro(1,1,79,24);
centxt("M O D I F I C A C I O N E S",2);
fp=fopen("proveedores.txt","r");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo proveedores.txt para lectura",13);
getch();
exit(0);
}
fp2=fopen("temp.txt","w");
if(fp2==NULL)
{
centxt("¨ERROR AL abrir el archivo temp.txt para escritura",13);
getch();
exit(0);
}
xyt(5,6,"Introduce el nombre del Provedor a modificar : ");
gets(modi);
ban=0;
while(fgets(linea,1024,fp))
{
separa(linea,registro,'|');
if(!strcmp(modi,registro[0]))
{
ban=1;
centxt("Registro encontrado : ",8);
for(i=EMPRESA;i<=INIEMPR;i++)
xyt(7,i+10,registro[i]);
centxt("¨Desea modificarlo? ",19);
om=getche();
if(toupper(om)=='S')
{
clrscr();

centxt("P R O C E S O D E M O D I F I C A C I O N",2);
//lectura de datos
fprintf(fp2,"%s|",registro[0]);
xyt(5,5,"Nombre : ");printf(registro[0]);
xyt(5,7,"Domicilio : ");
gets(dom);
xyt(5,9,"Colonia : ");
gets(colonia);
xyt(5,11,"C.P. : ");
gets(cp);
xyt(5,13,"Ciudad : ");
gets(lugar);
xyt(5,15,"Telefono : ");
gets(tel);
xyt(5,17,"E-mail : ");
gets(email);
xyt(5,19,"Inicio de la Empresa : ");
gets(iniempr);
//grabar al archivo
fprintf(fp2,"%s|%s|%s|%s|%s|%s|%s|n",dom,colonia,cp,lugar,tel,email,iniempr);
centxt("Proveedor Modificado",21);
}
else
{
fprintf(fp2,"%s",linea);
centxt("Proveedor NO modificado",21);
}
}
else
{
fprintf(fp2,"%s",linea);
}
}
//redefinir archivos
if(ban==0) centxt("Proveedor NO encontrado",13);
fclose(fp);
fclose(fp2);
remove("proveedores.txt");
rename("temp.txt","proveedores.txt");
centxt("¨Desea realizar otra modificacion?",23);
os=getche();
}while((toupper(os)=='S'));
}


//consulta de proveedores
void consultap()
{
FILE *fp;
int i;
char linea[1024],registro[8][1024];
fp=fopen("proveedores.txt","r");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo proveedores.txt para lectura",13);
getch();
exit(0);
}
while(fgets(linea,1024,fp))
{
clrscr();
cuadro(1,1,79,24);
centxt("C O N S U L T A S D E P R O V E D O R E S ",2);
separa(linea,registro,'|');
xyt(5,5,"Empresa : ");printf(registro[0]);
xyt(5,7,"Domicilio : ");printf(registro[1]);
xyt(5,9,"Colonia : ");printf(registro[2]);
xyt(5,11,"C.P. : ");printf(registro[3]);
xyt(5,13,"Ciudad : ");printf(registro[4]);
xyt(5,15,"Telefono : ");printf(registro[5]);
xyt(5,17,"E-mail : ");printf(registro[6]);
xyt(5,19,"Inicio de la Empresa : ");printf(registro[7]);
centxt("Presione una tecla para continuar",21);
getch();
}
centxt("Se terminaron los registros, presione una tecla para ir al menu",21);
fclose(fp);
}






//Dar de alta un elemento
void altas()
{
FILE *fp;
char marca[10],modelo[10],precio[10],noex[10],des[10];
char kafri;
do
{
clrscr();
cuadro(1,1,79,24);
centxt("A L T A S",2);
//abrir el archivo


fp=fopen("Kafri.txt","a");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo kafri.txt para a¤adir",13);
getch();
exit(0);
}
//lectura de datos
xyt(5,5,"MARCA : ");
gets(marca);
xyt(5,7,"MODELO : ");
gets(modelo);
xyt(5,9,"PRECIO : $");
gets(precio);
xyt(5,11, "DESCRIPCION : ");
gets(des);
xyt(5,13,"NUMEROS EXISTENTES : ");
gets(noex);
centxt("¨Desea dar de alta otro elemento? ",21);
kafri=getche();
//grabar al archivo
fprintf(fp,"%s|%s|%s|%s|n",marca,modelo,precio,des,noex);
fclose(fp);
}while(toupper(kafri)=='S');
}
//DAR DE BAJA UN ARCHIVO EN ESPECIFICO DE UN ARCHIVO
void bajas()
{
FILE *fp,*fp2;
int i,ban;
char linea[1024],ob
,borrar[228],registro[8][1024];
char os;

do
{
clrscr();
cuadro(1,1,79,24);
centxt("B A J A S",2);
fp=fopen("kafri.txt","r");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo kafri.txt para lectura",13);
getch();
exit(0);
}
fp2=fopen("temp.txt","w");
if(fp2==NULL)
{
centxt("¨ERROR AL abrir el archivo temp.txt para escritura",13);
getch();
exit(0);
}
xyt(5,6,"Introduce el nombre del archivo a borrar : ");
gets(borrar);
ban=0;
while(fgets(linea,1024,fp))
{
separa(linea,registro,'|');
if(!strcmp(borrar,registro[0]))
{
ban=1;
centxt("Registro encontrado : ",8);
for(i=MODELO;i<=ARGOLLA;i++)
xyt(7,i+10,registro[i]);
centxt("¨Desea eliminarlo? ",19);
ob=getche();
if(toupper(ob)=='S')
{
centxt("Registro Eliminado",21);
}
else
{
fprintf(fp2,"%s",linea);
centxt("Registro NO eliminado",21);
}
}
else
{
fprintf(fp2,"%s",linea);
}
}
if(ban==0) centxt("Registro NO encontrado",13);
//redefinir archivos
fclose(fp);
fclose(fp2);
remove("kafri.txt");
rename("temp.txt","kafri.txt");
centxt("¨Desea realizar otra baja?",23);
os=getche();
}while(toupper(os)=='S');
}

//MODIFICA LOS ELEMENTOS EXISTENTES EN EL ARCHIVO
void modificaciones()
{
FILE *fp,*fp2;
int i,ban;
char linea[1024],om,modi[228],registro[8][1024],os;
char marca[20],modelo[20],precio[20],noex[20],des[20];
do
{
clrscr();
cuadro(1,1,79,24);
centxt("M O D I F I C A C I O N E S",2);
fp=fopen("kafri.txt","r");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo kafri.txt para lectura",13);
getch();
exit(0);
}
fp2=fopen("temp.txt","w");
if(fp2==NULL)
{
centxt("¨ERROR AL abrir el archivo temp.txt para escritura",13);
getch();
exit(0);
}
xyt(5,6,"Introduce el nombre del archivo a modificar : ");
gets(modi);
ban=0;
while(fgets(linea,1024,fp))
{
separa(linea,registro,'|');
if(!strcmp(modi,registro[0]))
{
ban=1;
centxt("Registro encontrado : ",8);
for(i=MODELO;i<=ARGOLLA;i++)
xyt(7,i+10,registro[i]);
centxt("¨Desea modificarlo? ",19);
om=getche();
if(toupper(om)=='S')
{
clrscr();
// marcosubtitulo();
centxt("P R O C E S O D E M O D I F I C A C I O N",2);
//lectura de datos
fprintf(fp2,"%s|",registro[0]);
xyt(5,5,"MARCA : ");printf(registro[0]);
xyt(5,7,"MODELO : ");
gets(modelo);
xyt(5,9,"PRECIO : $ ");
gets(precio);
xyt(5,11, "DESCRIPCION : ");
gets(des);
xyt(5,13,"NUMEROS EXISTENTES : ");
gets(noex);
//grabar al archivo
fprintf(fp2,"%s|%s|%s|%s|%s|%s|%s|n",marca,modelo,precio,des,noex );
centxt("Registro Modificado",21);
}
else
{
fprintf(fp2,"%s",linea);
centxt("Registro NO modificado",21);
}
}
else
{
fprintf(fp2,"%s",linea);
}
}
//redefinir archivos
if(ban==0) centxt("Registro NO encontrado",13);
fclose(fp);
fclose(fp2);
remove("kafri.txt");
rename("temp.txt","kafri.txt");
centxt("¨Desea realizar otra modificacion?",23);
os=getche();
}while(toupper(os)=='S');
}
//consulta a pantalla, con descripcion de los datos
void consulta()
{
FILE *fp;
int i;
char linea[1024],registro[8][1024];
fp=fopen("kafri.txt","r");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo kafri.txt para lectura",13);
getch();
exit(0);
}
while(fgets(linea,1024,fp))
{
clrscr();
cuadro(1,1,79,24);
centxt("C O N S U L T A S ",2);
separa(linea,registro,'|');
xyt(5,5,"MARCA : ");printf(registro[0]);
xyt(5,7,"MODELO : ");printf(registro[1]);
xyt(5,9,"PRECIO : $");printf(registro[2]);
xyt(5,11,"DESCRIPCION ");printf(registro[3]);
xyt(5,13,"NUMERO EXISTENTES : ");printf(registro[4]);
centxt("Presione una tecla para continuar",21);
getch();
}
centxt("Se terminaron los registros, presione una tecla para ir al menu",21);
fclose(fp);
}

//MOSTRAR
void mostrar()
{
FILE *fp;
int i;
char linea[1024],registro[8][1024];
fp=fopen("kafri.txt","r");
if(fp==NULL)
{
centxt("¨ERROR AL abrir el archivo kafri.txt para lectura",13);
getch();
exit(0);
}
while(fgets(linea,1024,fp))
{
clrscr();
cuadro(1,1,79,24);
centxt("M O S T R A R",2);
separa(linea,registro,'|');
xyt(5,5,"MARCA : ");printf(registro[0]);
xyt(5,7,"MODELO : ");printf(registro[1]);
xyt(5,9,"PRECIO : $");printf(registro[2]);
xyt(5,11,"DESCRIPCION : ");printf(registro[3]);
xyt(5,13,"NUMEROS EXISTENTES : ");printf(registro[4]);
getch();
}
centxt("Se terminaron los registros, presione una tecla para ir al menu",21);
fclose(fp);}



char grilles,ann,bad;
void main()
{
do {

clrscr();
color(25,8);
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro2(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(18,7); puts(" I N T E G R A N T E S ");
gotoxy(25,10); printf(" &#8216;&#8216; ALICIA ANGELICA VAZQUEZ RIOS");
gotoxy(25,12); printf(" &#8216;&#8216; ANA ELENA ESPIRITU ESPINOZA");
gotoxy(25,14); printf(" &#8216;&#8216; CYNTHIA NAYELI I.MEDINA CONCHAS");
gotoxy(19,16); printf ("5'C' INGENIERIA EN SISTEMAS COMPUTACIONALES");
gotoxy(28,18); printf("&#8216;&#8216;&#8216; ANALISIS DE SISTEMAS &#8216;&#8216;&#8216;"); getch();
clrscr();
cuadro2(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
gotoxy(24,8); printf(" M E N é P R I N C I P A L ");
gotoxy(30,11); printf("1.- USUARIO ");
gotoxy(30,14); printf("2.- ADMINISTRADOR ");
gotoxy(30,17); printf("3.- SALIR ");
grilles=getch();

switch (grilles)
{
case '1': {
do{ clrscr();
//Men£ USUARIO
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro(12,4,68,22);//funcion hecha en la libreria para el marco
cuadro(15,6,65,21);
gotoxy(24,8); puts(" U S U A R I O ");
gotoxy(30,11); printf("1.- CAJERO");
gotoxy(30,14); printf("2.- ALMACENISTA");
gotoxy(30,17); printf("3.- SALIR");
ann=getch();
//MENé DE CAJERO
switch (ann)
{
case '1':{do {clrscr();
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(28,8); puts(" C A J E R O ");
gotoxy(33,11); printf("1.- CONSULTAS ");
gotoxy(33,15); printf("2.- SALIR");
bad=getch();
switch(bad)
{
case '1' : {clrscr();
consulta();break;}


}
}while(bad!='2'); break;
} //CASE
case '2': { do {clrscr();
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(24,8); puts(" A L M A C E N I S T A ");
gotoxy(32,11); printf("1.- ALTAS");
gotoxy(32,14); printf("2.- CONSULTAS ");
gotoxy(32,17);printf ("3.- MODIFICAR ");
gotoxy(32,20); printf("4.- SALIR");
bad=getch();
switch(bad)
{
case '1' : {clrscr();
altas();break;}
case '2' : {clrscr();
consulta();break;}
case '3':{clrscr();
modificaciones();break;}

} //switch almacenista
}while(bad!='4');break;
}//CASE ALMACENISTA



} //S 0

}while(ann!='3'); //para cerrar el do

break;

} //CASE


case '2': {
do
{ clrscr();
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(28,8);puts("A D M I N I S T R A D O R");
gotoxy(33,10);puts("1.- ALMACEN");
gotoxy(33,13);puts("2.- PRODUCTOS");
gotoxy(33,16);puts("3.- PROVEDORES");
gotoxy(33,19);puts("4.- SALIR");
ann = getch();
switch (ann)
{
case '1':
{do {clrscr();
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(30,7); puts(" A L M A C E N ");
gotoxy(35,11); printf("1.- ALTAS");
gotoxy(35,13); printf("2.- BAJAS");
gotoxy(35,15); printf ("3.- MODIFICAR");
gotoxy(35,17); printf("4.- SALIR");
bad=getch();

switch(bad)
{
case '1' : {clrscr();
altas();break;}
case '2' : {clrscr();
bajas();
break;}
case '3':{clrscr();
modificaciones();break;}
}//S
}while(bad!='4');break;
} //C1
case '2': {clrscr();
consulta();break;
}//CASE PRODUCTOS

case '3': { {clrscr();
gotoxy(15,5); printf(" Ï Ï J O Y E R I A D' K A F R I Ï Ï ");
cuadro(12,4,68,22);
cuadro(15,6,65,21);
gotoxy(28,7); puts(" P R O V E E D O R E S ");
gotoxy(32,10); printf("1.- CONSULTA PROVEE");
gotoxy(32,12); printf("2.- ALTAS");
gotoxy(32,14); printf("3.- BAJAS");
gotoxy(32,16); printf ("4.- MODIFICAR");
gotoxy(32,18); printf("5.- SALIR");
ann =getch();
switch(ann)
{
case '1':
{clrscr();consultap(); break;}
case '2':
{clrscr();altasp();break;}
case '3':
{clrscr();bajasp();break;}
case '4':
{clrscr();;modificacionesp();break;}

}//switch proveedores
}//do proveedores
while (ann!='5');break;
}//CASE PROVEDORES

}//SWITCH CASE ADMINISTRADOR

}while(ann!='4'); //para cerrar el do

break;

} //C2



} //S



}while(grilles!='3');

}