Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/12/2006, 04:17
MaxExtreme
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Re: Tremenda Duda!!

Cita:
Iniciado por fernandoBH Ver Mensaje
Código:
#include<stdio.h>

#include<string.h>
void altas();
void congen();
void conind();
void salir();
void main()
{ int op;
 do
 {
	printf("1-altas\n2-consulta general\n3-consulta individual\n4-salir\n");
	printf("opcion?:");
	scanf("%d",&op);
	switch(op)
	{ case 1:clrscr();
					 altas();
					 break;
		case 2:clrscr();
					 congen();
					 break;
		case 3:clrscr();
					 conind();
					 break;
		case 4:clrscr();
					 salir();
					 break;
		default:clrscr();
						printf("opcion no valida");
	}
 }while(op!=4);
getch();
}
void altas()
{ FILE *arch;
	char nom[30],cum[30],dir[40],tel[30],op;
	do
	{clrscr();
	 printf("nombre:");
	 flushall();
	 gets(nom);
	 printf("cumplea¤os:");
	 gets(cum);
	 printf("direccion:");
	 gets(dir);
	 printf("telefono:");
	 gets(tel);
	 arch=fopen("c:\amigos.txt","a");
	 if(arch==NULL)
		 {
			printf("problemas al abrir el archivo de amigos");
			getch();
			exit(1);
		 }
	 fprintf(arch,"%s %s %s %s",nom,cum,dir,tel);
	 if(fclose(arch)!=0)
			{
			 printf("problemas al cerrar el archivo de amigos");
			 getch();
			}
	 printf("deceas dar de alta a alguien mas..s/n?:");
	 scanf("%c",&op);
	}while(op=='s');
 getch();
 }
void congen()
{ clrscr();
	FILE *arch;
	char nom[30],cum[30],dir[40],tel[30];
	arch=fopen("c:\amigos.txt","r");
	if(arch==NULL)
		{
		 printf("problemas al abrir el archivo de amigos");
		 getch();
		 exit(1);
		}
	printf("lista de amigos");
	fscanf(arch,"%s %s %s %s",nom,cum,dir,tel);
	while(feof(arch)==0)
			 {
				printf("nombre: %s\n",nom);
				printf("cumplea¤os: %s\n",cum);
				printf("direccion: %s\n",dir);
				printf("telefono: %s\n",tel);
				fscanf(arch,"%s %s %s %s",nom,cum,dir,tel);
			 }
	if(fclose(arch)!=0)
		printf("problemas al cerrar el archivo de amigos");
 getch();
}
void conind()
{ clrscr();
	FILE *arch;
	char n[30],nom[30],cum[30],dir[40],tel[30];
	int b;
	arch=fopen("c:\amigos.txt","r");
	if(arch==NULL)
		{
		 printf("problemas al abrir el archivo de amigos");
		 getch();
		 exit(1);
		}
	printf("nombre del amigo: ");
	flushall();
	get(n);
	fscanf(arch,"%s %s %s %s",nom,cum,dir,tel);
	while(feof(arch)==0)
			 {
				b=0;
				if(strcmp(n,nom)==0)
					{
					 b=1;
					 printf("nombre: %s\m",nom);
					 printf("cumplea¤os: %s\n",cum);
					 printf("direccion: %s\n",dir);
					 printf("telefono: %s\n",tel);
					}
				fscanf(arch,"%s %s %s %s",nom,cum,dir,tel);
			 }
	if(fclose(arch)!=0)
		printf("problemas al cerrar archivo de amigos");
	if(b==0)
		printf("no se encontro ese nombre");
 getch();
}
void salir()
{
 clrscr();
 printf("adios");
 getch();
}
orale...gracias ahora si esta mas legible,...pero no entendi lo de la libreria conio.h
Te explico: conio.h no existe en C. Esa librería es exclusivamente una antigua librería de Borland C para MS-DOS.

Dicha librería es la que te provee de clrsrc(); y getch();

Por favor, trata de reemplazarlas. Una posibilidad es usar esto al principio de tu código y seguirá funcionando como ahora, pero portable:

#ifdef WIN32
#define clrsrc() system("cls");
#else
#define clrsrc() system("clear");
#endif

Y aparte, getch() puedes conseguirlo con funciones como getc(), getchar(), o similares de C estándar.