
actualizar datos en c
Publicado por miguel (1 intervención) el 13/06/2014 04:47:32
hola a todos soy extra nuevo jaja aca, miren tengo que hacer un programa en c de un inventario, que ingrese nuevos proveedores, los edite los elimine y los muestre pero tengo ene problemas para editarlos :C aqui les dejo lo que llevo porfa ayudenme :$ :
hasta ahora solo puedo agregar los nuevos proveedores. gracias :D
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <conio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
int id;
char nombre_prov[50];
char direc_prov[50];
char pais_prov[50];
int tel_prov;
int codpos_prov;
}prov;
void datos(prov *nuevo);
main() {
FILE *abrir,*cerrar;
prov nuevo, imp;
char opc;
char resp;
printf ("\nPrograma inventario\n");
printf("\nSeleccione una de las siguientes opciones\n \na)Ingresar nuevo proveedor\n \nb)Editar proveedor\n \nc)Eliminar proveedor\n");
scanf("%c", &opc);
switch(opc) {
do{
case 'a':
datos(&nuevo);
abrir = fopen("progasm.txt","a+");
fwrite(&nuevo,sizeof(nuevo),1,abrir);
printf ("\nDesea ingresa otro proveedor? s/n \n");
fflush(stdin);
scanf("%c", &resp);
fflush(stdin);
}while(resp=='s');
fclose(abrir);
break;
case 'b':
cerrar=fopen("progasm.txt", "r");
fread(&imp,sizeof(nuevo),1,cerrar);
printf("\nId de proveedor %d", imp.id);
printf("\nEl nombre del proveedor es %s", imp.nombre_prov );
printf("\nLa direccion es %s ", imp.direc_prov);
printf("\nEl pais es %s", imp.pais_prov);
printf("\nTelefono %d", imp.tel_prov);
printf("\nCodigo postal %d",imp.codpos_prov);
break;
fclose(cerrar);
}
}
void datos(prov *nuevo){
char buffer[80];
system("cls");
printf("\n\tId proveedor: ");
fflush(stdin);
fgets(buffer,80,stdin);
fflush(stdin);
sscanf(buffer,"%d",&nuevo->id);
fflush(stdin);
printf("\n\tNombre: ");
fflush(stdin);
fgets(nuevo->nombre_prov,50,stdin);
fflush(stdin);
printf("\n\tDireccion: ");
fflush(stdin);
fgets(nuevo->direc_prov,50,stdin);
fflush(stdin);
printf("\n\tPais: ");
fflush(stdin);
fgets(nuevo->pais_prov,50,stdin);
fflush(stdin);
printf("\n\tTelefono: ");
fflush(stdin);
fgets(buffer,80,stdin);
fflush(stdin);
sscanf(buffer,"%d",&nuevo->tel_prov);
fflush(stdin);
printf("\n\tCodigo postal: ");
fflush(stdin);
fgets(buffer,80,stdin);
fflush(stdin);
sscanf(buffer,"%d",&nuevo->codpos_prov);
fflush(stdin);
}
hasta ahora solo puedo agregar los nuevos proveedores. gracias :D
Valora esta pregunta


0