PDA

Ver la Versión Completa : ayuda con registros


blablaximena
19-11-2012, 03:46:17
tengo dudas sobre como un usuarios puede hacer modificaciones de datos ya registrados nose que si tengo que usar mas variables o que cosa llevo esto hasta el momento , me correponde la parte de modificar los datos ayuda urgente porfavooooooooooooor ni siquiera se si esta mas o menos bien. Lo estoy haciendo solo en C

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

char nombre,busca[25];
int cont=0,k,j,l,z,i=0,aux1=0,aux2,aux3,a,lim;


struct juegos{
char nombre[25];
int ano;
int lim_edad;
} juego [25];



void main()

{
int seleccion;

printf("\n 1 ingresar juegos");
scanf("%d",&seleccion);
printf("\n 2 busqueda de juegos ");
scanf("%d",&seleccion);
printf("\n 3 modificar datos ");
scanf("%d",&seleccion);
printf("\n 4 salir ");
scanf("%d",&seleccion);

switch(seleccion)

{

case 1:
printf("cuantos juegos desea ingresar");
scanf("%d",&k);
for(i=0,i<k,i++)
{
printf("ingrese nombre");
scanf("%[^\n]",&juego[i].nombre);
printf("ingrese año");
scanf("%[^\n]",&juego[i].ano);
printf("ingrese limite de edad");
scanf("%[^\n]",&juego[i].lim_edad);
}
break;

ecfisa
19-11-2012, 10:23:34
Hola blablaximena y bienvenido a Club Delphi :)

Por favor dale una leída a nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php)

me correponde la parte de modificar los datos
La modificación es muy similar al ingreso una vez obtenida la posición del array de structs:

void modificar(int pos){
printf("\n");
mostrar(pos);
printf("Nuevo nombre: ",juego[pos].nombre);
fgets(juego[pos].nombre, 25, stdin);
printf("Nuevo anio:",juego[pos].ano);
scanf("%d", &juego[pos].ano);
printf("Nuevo limite:",juego[pos].lim_edad);
scanf("%d", &juego[pos].lim_edad);
}
}

La posición se obtiene de la función buscar(void), la función mostrar(int) se encarga de mostrar los datos de determinada posición. Pero según comentas, estas no te corresponde hacerlas.

La función main() tendría que ser parecida esta:

...
int nrojug=0; // cantidad actual ingresada

struct juegos{
char nombre[25];
int ano;
int lim_edad;
} juego [25];

void menu(int *);
void ingresar(void);
int buscar(void);
void mostrar(int);
void modificar(int);

int main()
{
int op,pos;
do {
menu(&op);
switch (op) {
case 1: ingresar();break;
case 2: {
pos = buscar();
if(pos > -1)
mostrar(pos);
else
printf("El dato no existe\n");
};break;
case 3: {
pos = buscar();
if (pos > -1)
modificar(pos);
else
printf("El dato no existe\n");
};break;
}
}while(op!=4);
return 0;
}

También te sugiero que cuando pongas código C/C++ lo hagas entre las llaves aca_tu_codigo para que sea más legible, ya las agregue a tu mensaje.

Saludos.