Lo que quiero es que en la opción 2, lea los clientes que he guardado en la opción 1 pidiendo la cedula de cada cliente, es decir, sólo mostrar en pantalla los datos solo del cliente que se pida.
En la opción 1, logré guardar a los clientes con la cedula, y en el archivo de texto se va guardando bien. El único problema es en la opción 2, que no sé realmente cómo pedir un solo dato (cedula) para que me imprima solo a el cliente llamado.
Ahí intenté hacer algo, pero ya no pude encontrar nada en foros y videos. Y si es posible, hacer en la opción 3 y 4 lo mismo que en las 2 primeras.
/* Biblioteca de Peliculas*/
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
#include<fstream>
using namespace std;
struct cliente{
char nombre[20], apellido[20], nempresa[100], rif[10];
char direccion[50];
char sexo[10];
char ci[10];
int edad, telfijo, telmovil;
}cli;
struct inventario{
char codigo[3], pelicula[100], duracion[100], genero[20], director[20], provedor[20];
int cant, disp;
float psi, po,pdetal,pmayor;
}inv;
int opc;
char tipoc[9], ci[10], rif[10], codigo[3];
void encabezado()
{
printf("\t------------------------------------------------------\n");
printf("\t- BLOCKBUSTER -\n");
printf("\t- Meb Escobedo, Av. Raul Salinas Lozano 297 -\n");
printf("\t- 66050 Cd Gral Escobedo, N.L -\n");
printf("\t- MOVIL: 81 8901 2437 -\n");
printf("\t- HORARIO: 10AM-8PM -\n");
printf("\t- -\n");
printf("\t------------------------------------------------------\n\n");
}
void ingresoc(){
ofstream archivo;
FILE*ar;
system("cls");
printf("\t OPCION 1: CREAR CLIENTES\n\n");
if((ar = fopen("cliente.txt","a+")) ==NULL){
printf("No se pudo abrir el archivo correctamente. Verifique por favor.");
}
else
{
fflush(stdin);
printf("\n Cedula de identidad: ");
gets(cli.ci);
fprintf(ar,"%s\t",cli.ci);
printf("\n Nombre(s): ");
gets(cli.nombre);
fprintf(ar,"%s\t",cli.nombre);
printf("\n Apellido: ");
gets(cli.apellido);
fprintf(ar,"%s\t",cli.apellido);
printf("\n Direccion: ");
gets(cli.direccion);
fprintf(ar,"%s\t",cli.direccion);
printf("\n Sexo (M/F): ");
gets(cli.sexo);
fprintf(ar,"%s\t",cli.sexo);
printf("\n Edad: ");
scanf("%d",&cli.edad);
fprintf(ar,"%d\t",cli.edad);
printf("\n Telefono Movil: ");
scanf("%d",&cli.telmovil);
fprintf(ar,"%d\t",cli.telmovil);
printf("\n Telefono Fijo: ");
scanf("%d",&cli.telfijo);
fprintf(ar,"%d\t",cli.telfijo);
}
}
// Ver datos guardados de la opción 1
void verDatos(){
system("cls");
FILE*ar;
fflush(stdin);
printf("\tOPCION 2. VER DATOS DE CLIENTES ");
printf("\n\n Ingrese Cedula:");
gets(cli.ci);
if((ar = fopen("cliente.txt","r")) ==NULL){
printf("No se pudo abrir el archivo correctamente. Verifique por favor.");
}
else
else
{
while(!feof(stdin)){
fprintf(ar,"%s %s %d %d %d %s %s\n", cli.nombre,cli.apellido, cli.telfijo, cli.direccion, cli.sexo );
}
fclose(ar);
}
getch();
}
void ingresoi(){
int j=0;
system("cls");
printf("\t OPCION 3: CREAR INVENTARIO\n\n");
fflush(stdin);
printf("\n Equipo: #%d",j);
printf("\n Codigo del producto: ");
gets(inv.codigo);
printf("\n Nombre de la pelicula: ");
gets(inv.pelicula);
printf("\n Duracion: ");
gets(inv.duracion);
printf("\n Genero: ");
gets(inv.genero);
printf("\n Director: ");
gets(inv.director);
printf("\n Cantidad: ");
scanf("%d",&inv.cant);
printf("\n Disponible: ");
scanf("%d",&inv.disp);
printf("\n Precio al detalle: ");
scanf("%f",&inv.pdetal);
printf("\n Precio al mayor: ");
scanf("%f",&inv.pmayor);
printf("\n Precio sin IVA: ");
scanf("%f",&inv.psi);
printf("\n Precio oferta: ");
scanf("%f",&inv.po);
printf("\n Proveedor:");
gets(inv.provedor);
getch();
}
void verinv(){
system("cls");
printf("\n 4. VER INVENTARIO");
printf("\n\n Ingrese Codigo:");
scanf("%s",&codigo);
if(strcmp(codigo,inv.codigo)==0){
printf("\n Codigo del producto:",inv.codigo);
printf("\n Nombre de la pelicula:",inv.pelicula);
printf("\n Duracion:",inv.duracion);
printf("\n Genero",inv.genero);
printf("\n Director",inv.director);
printf("\n Cantidad: %d",inv.cant);
printf("\n Disponible:%d",inv.disp);
printf("\n Precio al detal %.2f",inv.pdetal);
printf("\n Precio al mayor: %.2f",inv.pmayor);
printf("\n Precio sin IVA: %.2f",inv.psi);
printf("\n Precio oferta: %.2f",&inv.po);
printf("\n Proveedor:",inv.provedor);
}
getch();
}
int main(){
encabezado();
while(opc!=5){
printf("******MENU******\n");
printf("\n1. CREAR CLIENTES");
printf("\n2. VER DATOS DE CLIENTES");
printf("\n3. CREAR INVENTARIO");
printf("\n4. VER INVENTARIO");
printf("\n5. SALIR ");
printf("\nIngrese opcion: ");
scanf("%d",&opc);
switch(opc){
case 1:{
ingresoc();
system("cls");
encabezado();
}break;
case 2:{
verDatos();
system("cls");
encabezado();
}break;
case 3:{
ingresoi();
system("cls");
encabezado();
}break;
case 4:{
verinv();
system("cls");
encabezado();
}break;
}
}
return 0;
}
introducir el código aquí