Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   ayuda con registros (https://www.clubdelphi.com/foros/showthread.php?t=81486)

blablaximena 19-11-2012 03:46:17

ayuda con registros
 
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
Código:

#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

Cita:

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:
Código:

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:
Código:

...
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 [code] aca_tu_codigo [/code] para que sea más legible, ya las agregue a tu mensaje.

Saludos.


La franja horaria es GMT +2. Ahora son las 08:14:20.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi