elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / como hago que se enlisten datos en C en: 12 Mayo 2017, 14:03 pm
Hola chicos sigo con el mismo tema, tengo mi codigo pero ahora quisiera saber si me pueden ayudar a decirme como puedo enlistar los datos que se guardan, miren hay diferentes menus este codigo si compila bien pero por ejemplo en el menu que dice "ingresar como usuario" en la parte donde dice ingresar como nuevo usuario ahi pide una serie de datos ahi es donde tengo problema porque cuando uno ingresa como administrador en el menú dice "ver lista de todos los usuarios" ESE ES MI PROBLEMA  que no se como se haga :( me ayudarian explicandome y poniendo un ejemplo ***OJO porque luego se enojan no estoy diciendo que me lo hagan ***

Código
  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5.  
  6. char linea[100];
  7. int cont=-1;
  8. int cont_ad=-1;
  9.  
  10. void presentacion(void);
  11. void menu (void);
  12. void administrador1 (void);
  13. void administrador (void);
  14. void usuario (void);
  15. void leer (void);
  16.  
  17. struct
  18. {
  19.  char nombre_terminal[50];
  20.  char nombre[81];
  21.  char usuario[81];
  22.  char contra_usuario[30];
  23.  char tarjeta[30];
  24. }ficha[1000];
  25.  
  26. int main ()
  27. {
  28.  menu();
  29.  leer();
  30.  return 0;
  31. }
  32.  
  33. void menu (void)
  34. {
  35.  int opcion;
  36.  system("clear");
  37.  sleep(1);
  38.  system("clear");
  39.  printf("\n\t\tBienvenido a BLABLA, Renta motocicletas ecológicas\n");
  40.  printf("\n\t\t\t      ______________________\n");
  41.  printf("\t\t\t     |_-_-_-_-_-_-_-_-_-_-_ |\n");
  42.  printf("\t\t\t    | SELECCIONA UNA OPCION: | \n");
  43.  printf("\t\t\t     |_-_-_-_-_-_-_-_-_-_-_ |\n");
  44.  printf("\t\t\t      ======================\n");
  45.  printf("\n\t  ===================================================================== \n ");
  46.  printf("\t ||                                                    -MENU PRINCIPAL ||");
  47.  printf("\n\t || 0. Salir del programa > ESCRIBIR [0 + Enter]                       || ");
  48.  printf("\n\t || 1. Ingresar como Administrador > ESCRIBIR [1 + Enter]              || ");
  49.  printf("\n\t || 2. Ingresar como Usuario > ESCRIBIR [2 + Enter]                    || ");
  50.  printf("\n\t || 3. Pantalla de instrucciones  > [ESCRIBIR (3 + Enter)]             ||\n ");
  51.  printf("\t ||                                                                    ||");
  52.  printf("\n\t  =====================================================================  ");
  53.  printf("\n\n\t\t\t\t\t>");
  54.  scanf("%d",&opcion);
  55.  getchar();
  56.  if (opcion == 0)
  57.    {
  58.      system("clear");
  59.      printf("\n\n\tGracias por su preferencia\n\n");
  60.      exit(-1);
  61.    }
  62.  if (opcion == 1)
  63.    {
  64.      system("clear");
  65.      administrador();
  66.    }
  67.  if (opcion == 2)
  68.    {
  69.      system("clear");
  70.      usuario();
  71.    }
  72.  if (opcion == 3)
  73.    {
  74.      system("clear");
  75.      presentacion();
  76.    }
  77. }
  78.  
  79. void presentacion (void)
  80. {
  81.  //en este apartado se muestra en la pantalla las instrucciones generales del funcionamiento de las motocicletas
  82.  //se puede ver como se limpia la pantalla cada que avanza el programa para que no se sature de ontenido el monitor
  83.  int m;
  84.  printf("\n\n\t BIENVENID@S AL PROGRAMA DE LALALALAS ECOLOGICAS \n\n"); //bienvenida
  85.  printf("lea cuidadosamente lo siguiente \n\n");
  86.  printf("\n\t--------------------------------------------------------------------\n");//pag 1
  87.  printf("\t|                          INSTRUCCIONES:                          |\n");
  88.  printf("\t| En este programa puedes rentar una motocicleta ecologica para ti |\n");
  89.  printf("\t| dentro de las sucursales registradas del progrma, para esto cada |\n");
  90.  printf("\t| persona debe de darse de alta como usuario o en dado caso de que |\n");
  91.  printf("\t| el usuario tenga una cuenta existente solo debe ingresar, luego  |\n");
  92.  printf("\t| un menú se desglosa para poder seleccionar una accion cualquiera.|\n");
  93.  printf("\t|                                                                  |\n");
  94.  printf("\t| La renta de las motocicletas es por una hora, si se sobrepasa el |\n");
  95.  printf("\t| tiempo entonces se cobrara una multa de $ 2,000 por hora que sea |\n");
  96.  printf("\t| excedida, asi mismo el propietario de la renta debe regresar las |\n");
  97.  printf("\t| motocicletas en buen estado y seran evaluadas si estan bien o no |\n");
  98.  printf("\t| finalmente solo el un administrador puede manejar el control del |\n");
  99.  printf("\t| ordenamiento de los datos prioritarios, es decir que si tiene en |\n");
  100.  printf("\t| su cuenta alguna multa, el indicado para poder manipularlo es el |\n");
  101.  printf("\t| administrador no el usuario.                               pag.1 |\n");
  102.  printf("\t--------------------------------------------------------------------\n");
  103.  printf("\n\t---------------------------------------------------------------------\n");// pag 2
  104.  printf("\t| Dentro de las funciones que el administrador tiene como prioridad |\n");
  105.  printf("\t| realizar en el programa, estan las siguientes: 1 Agregar una moto-|\n");
  106.  printf("\t| estacion, 2 Eliminar una moto-estacion, 3 Usuarios registrados en |\n");
  107.  printf("\t| el sistema, 4 Numero de motos en Bodega y en reparacion, 5 status |\n");
  108.  printf("\t| de moto-estaciones, 6 Salir y actualizar el contenido.            |\n");
  109.  printf("\t|                                                                   |\n");
  110.  printf("\t| Dentro de las funciones que hace el usuario, estan las siguientes:|\n");
  111.  printf("\t| 1 ver los adeudos, 2 rentar motocicleta.                          |\n");
  112.  printf("\t|                                                                   |\n");
  113.  printf("\t| Tanto 'Usuario' como 'Administrador' deben de tener una cuenta ya |\n");
  114.  printf("\t| que el operador debe distinguir quien desea ingresar, este perfil |\n");
  115.  printf("\t| te muestra entonces tus respectivas funciones. Todas las motos se |\n");
  116.  printf("\t| almacenan en una bodega y si tienen fallas se mandan reparar, asi |\n");
  117.  printf("\t| las motocicletas cuando son arregladas vuelven a la bodega.       |\n");
  118.  printf("\t|                                                             pag.2 |\n");
  119.  printf("\t---------------------------------------------------------------------\n");
  120.  printf("\n\tENTERADO... \n");
  121.  getchar();
  122.  printf("  Menu principal [1 + Enter] Salir [0 + Enter] \n");
  123.  scanf("%d",&m);
  124.  if (m == 1)
  125.    menu();
  126.  if (m == 0)
  127.   {
  128.    system("clear");
  129.    printf("\n\n\tGracias por su preferencia\n\n");
  130.    exit(-1);
  131.   }
  132. }
  133.  
  134. void administrador ()
  135. {
  136.  int Filtro,usuario = 12345,password,con = 0;
  137.  
  138.  printf("\n\n\t\t\t\t BIENVENIDO A ADMINISTRADOR ... \n");
  139.  printf("\n\t  ========================================================================= \n ");
  140.  printf("\t ||                                                                        ||");
  141.  printf("\n\t || 0. Salir del programa y actualizar contenido > [ESCRIBIR (0 + Enter)]  || ");
  142.  printf("\n\t || 1. Ingresar como administrador > [ESCRIBIR (1 + Enter)]                || ");
  143.  printf("\n\t || 2. Volver al menu > [ESCRIBIR (2 + Enter)]                             || ");
  144.  printf("\n\t ||                                                                        ||\n");
  145.  printf("\t  =========================================================================  ");
  146.  printf("\n\n\t\t\t\t\t>");
  147.  scanf("%d",&Filtro);
  148.  switch(Filtro){
  149.  
  150.  case 0:
  151.  system("clear");
  152.  printf("\n\n\tGracias por su preferencia\n\n");
  153.  exit(-1);
  154.  break;
  155.  
  156.  case 1:
  157.  printf("\n\n\t\tUsuario: \n");
  158.  printf("\t\tADMINISTRADOR \n");
  159.  do {
  160.  printf("\n\tpara ingresar dame la clave: \n\t\t>");
  161.  scanf("%d",&password);
  162.  con = con + 1;
  163.  } while ((usuario != password)&&(con <= 4));
  164. if (usuario == password)
  165. {
  166. printf("\n\n\tiniciando sesion ... \n");
  167. sleep(3);
  168. administrador1 ();
  169. }
  170. else
  171. {
  172. printf("\n\tpassword incorrecto e ingresado mas de 5 veces... \n");
  173. printf("\n\t<<< VOLVIENDO AL MENU PRINCIPAL >>> \n");
  174. sleep(4);
  175. menu();
  176. }
  177.  break;
  178.  
  179.  case 2:
  180.  system("clear");
  181.  menu();
  182.  break;
  183. }
  184.  
  185.  
  186. }
  187.  
  188. void administrador1 ()
  189. {
  190. char aux[30];
  191. int seleccion,elimina,o,i,u,moto,j;
  192.  system("clear");
  193.  printf("\n\n\t\t\t\t PANEL DE ADMINISTRADOR ... \n");
  194.  printf("\n\t  ========================================================================= \n ");
  195.  printf("\t ||                                                                        ||");
  196.  printf("\n\t || 0. Salir del programa y actualizar contenido > [ESCRIBIR (0 + Enter)]  || ");
  197.  printf("\n\t || 1. Agregar una moto-estacion  > [ESCRIBIR (1 + Enter)]                 || ");
  198.  printf("\n\t || 2. Eliminar una moto-estacion > [ESCRIBIR (2 + Enter)]                 || ");
  199.  printf("\n\t || 3. Lista de usuarios registrados > [ESCRIBIR (3 + Enter)]              || ");
  200.  printf("\n\t || 4. Numero de motos en bodega y en reparacion > [ESCRIBIR (4 + Enter)]  || ");
  201.  printf("\n\t || 5. Status de moto-estaciones existentes > [ESCRIBIR (5 + Enter)]       || ");
  202.  printf("\n\t || 6. Manipular motos > [ESCRIBIR (6 + Enter)]                            || ");
  203.  printf("\n\t || 7. Volver al menu principal y actualizar > [ESCRIBIR (7 + Enter)]      ||\n ");
  204.  printf("\t ||                                                                        ||");
  205.  printf("\n\t  =========================================================================  ");
  206.  printf("\n\n\t\t\t\t\t\t\t     %d Terminales registradas\n",cont_ad+1);
  207.  printf("\n\n\t\t\t\t\t>");
  208.  scanf("%d",&seleccion);
  209.  
  210.  switch(seleccion){
  211.  
  212.  case 0:
  213.      system("clear");
  214.      printf("\n\n\tGracias por su preferencia \n\n");
  215.      exit(-1);
  216.      break;
  217.  
  218.  case 1:
  219.      system("clear");
  220.      printf("\n\tAgregar una terminal \n");
  221.      printf("Introduce la ubicacion de la moto-estacion nueva:\n");
  222.      getchar();
  223.      gets(ficha[cont_ad+1].nombre_terminal);
  224.      cont_ad++;
  225.      printf("\nEsta el la moto-estacio numero %d\n",cont_ad+1); //agregue esta linea porque al momento de eliminar busca por numero
  226.      printf("<<<AGREGANDO 10 MOTOS POR DEFAULT>>> \n\n");
  227.          printf("Asignando motos ecologicas por default \n");
  228.  printf("El numero de serie de cada una es:  \n");
  229.  for (u = 0; u<=10 ; u++)
  230.  {
  231.  printf("El numero de serie de la moto numero %d es: %d  \n",u,1000+u);
  232.  }
  233.      printf("_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_\n");
  234.      printf("Moto-estacion dada de alta, ahora el usuario puede ver la nueva terminal\n");
  235.      printf("_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_\n");
  236.      sleep(1);
  237.      administrador1 ();
  238.     break;
  239.  
  240.  case 2:
  241.     system("clear");
  242.     printf("\n\tEliminar moto-estacion \n");
  243.     printf("\tDame el numero de motoestacion que deseas eliminar \n");
  244.     scanf("%d",&elimina);
  245.     for (j=elimina-1;j<cont_ad;j++){
  246. strcpy(ficha[j].nombre_terminal,ficha[j+1].nombre_terminal);
  247. }
  248.     cont_ad--;
  249.     printf("\tTerminal eliminada, Gracias\n");
  250.     sleep(3);
  251.     administrador1 ();
  252.    break;
  253.  
  254.  case 3:
  255.     system("clear");
  256.     printf("\tUsuarios dados de alta hasta el momento...\n");
  257.     sleep(1);
  258.     administrador1 ();
  259.     break;
  260.  
  261.  case 4:
  262.     system("clear");
  263.     printf("\tTotal de motos extre:\n\t Total de motos en bodega (disponibles):\n\t Total de motos en Reparacion (No disponibles):\n");
  264.     sleep(1);
  265.     administrador1 ();
  266.     break;
  267.  
  268.  case 5:
  269.     system("clear");
  270.     printf("\n\tEstatus de moto estaciones> datos informativos\n\n");
  271.     printf("Estas son las motoestaciones registradas: \n");
  272.     for (j=0 ;j<cont_ad+1;j++){
  273.     printf("%d.- %s \n",j+1,ficha[j].nombre_terminal);
  274.     }
  275.     printf("selecciona el numero de la motoestacion que deseas consultar. [# + Enter] \n");
  276.     sleep(3);
  277.     administrador1 ();
  278.     break;
  279.  
  280.  case 6:
  281.  break;
  282.  
  283.  case 7:
  284.     system("clear");
  285.     menu();
  286.     break;
  287. }
  288. }
  289.  
  290.  
  291. void usuario ()
  292. {
  293.  int  j,seleccion,r,seleccion1,buscar,comparar;
  294.  char usu[81],ubicacion[81],con_usu[81];
  295.  
  296. // buscar  = 0;
  297.  system("clear");
  298.  do{
  299.    printf("\n\n\t\t\t\t PANEL DEL USUARIO ... \n");
  300.    printf("\n\t  ========================================================================= \n ");
  301.    printf("\t ||                                                                        ||");
  302.    printf("\n\t || 0. Salir del programa y actualizar contenido > [ESCRIBIR (0 + Enter)]  || ");
  303.    printf("\n\t || 1. Registrarse como nuevo usuario  > [ESCRIBIR (1 + Enter)]            || ");
  304.    printf("\n\t || 2. Iniciar sesion como usuario > [ESCRIBIR (2 + Enter)]                || ");
  305.    printf("\n\t || 3. Volver al menu principal y actualizar > [ESCRIBIR (3 + Enter)]      ||\n ");
  306.    printf("\t ||                                                                        ||");
  307.    printf("\n\t  =========================================================================  ");
  308.    printf("\n\n\t\t\t\t\t\t\t     %d Datos registrados\n",cont+1);
  309.    printf("\n\n\t\t\t\t\t>");
  310.    scanf("%d",&seleccion);
  311.    getchar();
  312.    switch(seleccion){
  313.      /***********************Salir*******************************/
  314.    case 0:
  315.      system("clear");
  316.      printf("\n\n\tGracias por su preferencia\n\n");
  317.      leer();
  318.      exit(-1);
  319.      break;
  320.      /************************Solicitar datos*********************************/
  321.    case 1:
  322.      system("clear");
  323.      puts("\t        Registrarse...       \n");
  324.      printf("Introduce tu nombre:\n");
  325.      gets(ficha[cont+1].nombre);
  326.      printf("Introduce el usuario:\n");
  327.      gets(ficha[cont+1].usuario);
  328.      printf("Introduce la contraseña:\n");
  329.      gets(ficha[cont+1].contra_usuario);
  330.      printf("Introduce numero de tarjeta:\n");
  331.      gets(ficha[cont+1].tarjeta);
  332.      printf("Introduce [Enter] para continuar:\n");
  333.      getchar();
  334.      printf("_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_\n");
  335.      printf("Ahora estas dado de alta y el administrador puede ver tu informacion\n");
  336.      printf("_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_\n");
  337. //      printf("nombre> %s\n",ficha[cont].nombre);
  338. //      printf("contra> %s\n",ficha[cont].contra_usuario);
  339. //      printf("usuario> %s\n",ficha[cont].usuario);
  340.  
  341. FILE* archivo;
  342. archivo=fopen("lalalala.txt","at");
  343. fprintf(archivo,"%s\n",ficha[cont+1].nombre);
  344. fprintf(archivo,"%s\n",ficha[cont+1].usuario);
  345. fprintf(archivo,"%s\n",ficha[cont+1].contra_usuario);
  346. fprintf(archivo,"%s\n",ficha[cont+1].tarjeta);
  347. fclose(archivo);
  348. cont++;
  349.      sleep(3);
  350.      system("clear");
  351.      break;
  352.  
  353.      /**************************Ingresar*************************/
  354.    case 2:
  355.      system("clear");
  356.      printf("\n\t\t          Ingresar...          \n\n");
  357.      printf("\tDame el usuario registrado:\n\t>");
  358.      gets(usu);
  359.      buscar=strcmp(ficha[cont].usuario,usu);
  360.       if(buscar != 0){
  361. printf("error \n");
  362.       }
  363.        else {
  364. printf("\tIngresa la contrasena del usuario: \n\t>");
  365. gets(con_usu);
  366. comparar=strcmp(ficha[cont].contra_usuario,con_usu);
  367. system("clear");
  368. if(comparar == 0 ){
  369.          printf("\tBIENVENIDO USUARIO \n");
  370.          printf("Que accion deseas realizar:\n");
  371.  printf("_-_-_-_-_-_-_-_\n");
  372.          printf("1.Ver adeudos\n2.Rentar Moto\n3.Regresar moto\n");
  373.          printf("_-_-_-_-_-_-_-_\n");
  374.  scanf("%d",&seleccion1);
  375.  getchar();
  376.  if(seleccion1==1){
  377.    printf("Los adeudos de esta cuenta son...\n");
  378.    sleep(1);
  379.  }
  380.  if(seleccion1==2){
  381.    printf("Nuestras terminales son:\n");
  382.    sleep(1);
  383. //mprimir las terminales existentes
  384.    printf("Dame el nombre de la terminal que deseas:\n");
  385.    gets(ubicacion);
  386.    printf("ATENCION: RECUERDA QUE LA RENTA ES POR 1 HORA, CON EL 100 PORCIENTO DE SU BATERIA Y\n");
  387.    printf("A PARTIR DE LA PRIMER HORA EXCEDIDA, SE COBRAN $2000 POR CADA HORA ADICIONAL \n\n");
  388.    printf("\tQuieres continuar... (si [1 + Enter], no [2 + Enter]):\n");
  389.            printf("\n\n\t\t\t\t\t>");
  390.    scanf("%d",&r);
  391.    if(r==1){
  392.      printf("Su moto esta apartada por una hora\nEsperamos su llegada\nGracias por rentar con BLABLA\n");
  393.      printf("\n\t<<<REGRESANDO AL PANEL DEL USUARIO>>>\n");
  394.      sleep(6);
  395.      usuario();
  396.    }
  397.   else{
  398.     printf("\n\t<<<REGRESANDO AL PANEL DEL USUARIO>>>\n");
  399.     sleep(2);
  400.     usuario();
  401.    }
  402.  }
  403. }
  404. }
  405.  
  406.      system("clear");
  407.      break;
  408.      /********************volver al menu****************************/
  409.    case 3:
  410.      menu();
  411.      break;
  412.    }//fin switch
  413.  }while (seleccion!=0);
  414. }//fin programa
  415.  
  416.  
  417. void leer (void)
  418. {
  419.  
  420. char linea[50];
  421. cont=-1;
  422. cont_ad=-1;
  423.  
  424. FILE *archivo;
  425. archivo = fopen("lalalala.txt","rt");
  426. if (archivo != NULL){
  427. while (!feof (archivo)){
  428. fgets(linea,80,archivo);
  429. if (feof(archivo))break;
  430. if (strlen(linea)>0)
  431. linea[strlen(linea)-1]='\0';
  432. strcpy(ficha[cont+1].nombre,linea);
  433.  
  434. fgets(linea,80,archivo);
  435.        if (feof(archivo))break;
  436.        if (strlen(linea)>0)
  437.        linea[strlen(linea)-1]='\0';
  438.        strcpy(ficha[cont+1].usuario,linea);
  439.  
  440. fgets(linea,80,archivo);
  441.        if (feof(archivo))break;
  442.        if (strlen(linea)>0)
  443.        linea[strlen(linea)-1]='\0';
  444.        strcpy(ficha[cont+1].contra_usuario,linea);
  445.  
  446. fgets(linea,80,archivo);
  447.        if (feof(archivo))break;
  448.        if (strlen(linea)>0)
  449.        linea[strlen(linea)-1]='\0';
  450.        strcpy(ficha[cont+1].tarjeta,linea);
  451. /*
  452.  
  453.  
  454.  
  455.  
  456.  
  457. fgets(linea,80,archivo); //asignar 80 espacios para el nombre de la cancion
  458. if(feof(archivo))break;//revisa si se encuentra al final del archivo
  459. if(strlen(linea)>0)// evalua la linea
  460. linea[strlen(linea)-1]='\0';// y acomoda en la posicion correspondiente (blanco) el nombre en este caso
  461. strcpy(ficha[ultimaficha+1].nombre_cancion,linea); // registra el nombre de la cancion
  462.  
  463.  
  464.  
  465.  
  466.  fgets(linea,80,archivo);
  467.         if (feof(archivo))break;
  468.         if (strlen(linea)>0)
  469.         linea[strlen(linea)-1]='\0';
  470.         strcpy(ficha[cont_ad+1].nombre_terminal,linea);
  471. */
  472.  cont++;
  473.  cont_ad++;
  474.  }
  475.  }
  476.  fclose(archivo);
  477. }
  478.  
  479.  
2  Programación / Programación C/C++ / porque no compila este codigo en: 6 Mayo 2017, 20:01 pm
Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int cont=-1; //definir en el original
  5. void usuario();
  6. int sleep();
  7.  
  8. int main()
  9. {
  10. usuario();
  11. return 0;
  12. }
  13.  
  14. void usuario(void){
  15. struct
  16. {
  17. char nombre[81];
  18. char usuario[81];
  19. char contra_usuario[30];
  20. char tarjeta[30];
  21. }ficha;
  22.  
  23.  
  24. int seleccion,r,seleccion1,buscar,comparar;
  25. char usu[81],ubicacion[81],con_usu[81];
  26.  
  27. system("clear");
  28. do{
  29. printf("Leidos %d datos\n",cont+1);
  30. printf("Pananel de ***\n");
  31. printf("\t                  MENU                     \n");
  32. printf("1.Registrarse\n2.Ingresar\n0.Salir\n");
  33. scanf("%d",&seleccion);
  34.  
  35. switch(seleccion){
  36.  
  37. /************************Solicitar datos*********************************/
  38. case 1:
  39. system("clear");
  40. puts("\t        Registrarse...       \n");
  41. printf("Introduce tu  nombre:\n");
  42. gets(ficha[cont+1].nombre);
  43. printf("Introduce el usuario:\n");
  44. gets(ficha[cont+1].usuario);
  45. printf("Introduce la contraseña:\n");
  46. gets(ficha[cont+1].contra_usuario);
  47. printf("Introduce numero de tarjeta:\n");
  48. gets(ficha[cont+1].tarjeta);
  49. cont++;
  50. printf("Ahora estas ******* \n");
  51. sleep(1);
  52. system("clear");
  53. break;
  54.  
  55. /**************************Ingresar*************************/
  56. case 2:
  57. system("clear");
  58. printf("\t          Ingresar...          \n");
  59. printf("Usuario:\n");
  60. gets(usu);
  61. buscar=strcmp(ficha.usuario,usu);
  62. if(buscar != 0){
  63. printf("error Ã\n");
  64. }
  65. else{
  66. printf("Ingresa la contraseña:\n");
  67. gets(con_usu);
  68. comparar=strcmp(ficha[cont+1].contra_usuario,con_usu);
  69. if(comparar==0){
  70. printf("1.Adeudos\n2.Rentar bici\n");
  71. scanf("%d",&seleccion1);
  72. if(seleccion1==1){
  73. printf("Los adeudos de esta cuenta son...\n");
  74. sleep(1);
  75. }
  76. if(seleccion1==2){
  77. printf("Nuestras terminales son:\n");
  78. printf("Dame el nombre de la terminal que deseas:\n");
  79. gets(ubicacion);
  80. printf("La renta es por *****\n");
  81. printf("A partir dla primer hora se ****");
  82. printf("Continuar(1.Si 2.No):\n");
  83. scanf("%d",&r);
  84. if(r==1){
  85. printf("Su*******\n");
  86. }
  87. }
  88. }
  89. }
  90. system("clear");
  91. break;
  92. }//fin switch
  93. }while (seleccion!=0);
  94. }//fin programa
  95.  

Me salen estos errores pero que esta mal?
programa.c:42:1: warning: implicit declaration of function ‘gets’ [-Wimplicit-function-declaration]
 gets(ficha[cont+1].nombre);
 ^
programa.c:42:11: error: subscripted value is neither array nor pointer nor vector
 gets(ficha[cont+1].nombre);
           ^
programa.c:45:11: error: subscripted value is neither array nor pointer nor vector
 gets(ficha[cont+1].usuario);
           ^
programa.c:48:11: error: subscripted value is neither array nor pointer nor vector
 gets(ficha[cont+1].contra_usuario);
           ^
programa.c:51:11: error: subscripted value is neither array nor pointer nor vector
 gets(ficha[cont+1].tarjeta);
           ^
programa.c:74:22: error: subscripted value is neither array nor pointer nor vector
 comparar=strcmp(ficha[cont+1].contra_usuario,con_usu);
3  Programación / Programación C/C++ / me podrian decir porque no compila este codigo? en: 1 Mayo 2017, 23:35 pm
hola chicos/cas miren estoy con este codigo
Código
  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <stdlib.h>
  4.  
  5. int presentacion(int *sel);
  6. void administrador (void);
  7. void usuario (void);
  8.  
  9. int main ()
  10. {
  11. int sel;
  12.  
  13. presentacion(&sel);
  14.  
  15. printf("Sel vale> %d \n",sel);
  16.  
  17. if (sel = 1)
  18. {
  19. administrador();
  20. }
  21.  
  22. if (sel = 2)
  23. {
  24. usuario();
  25. }
  26.  
  27. return 0;
  28. }
  29.  
  30.  
  31. int presentacion (int *sel)
  32. {
  33. //en este apartado se muestra en la pantalla las instrucciones generales del funcionamiento de las motocicletas
  34. //se puede ver como se limpia la pantalla cada que avanza el programa para que no se sature de ontenido el monitor
  35. int resp;
  36. system("clear");
  37.        printf("\n\n\t BIENVENID@S AL PROGRAMA DE  \n\n"); //bienvenida
  38. printf("lea cuidadosamente lo siguiente \n\n");
  39. printf("\n\t--------------------------------------------------------------------\n");//pag 1
  40. printf("//* AQUI VAN UNAS INSTRUCCIONES*//  |\n");
  41.  
  42.        printf("\t-/* AQUI TAMBIÉN VAN UNAS INSTRUCCIONES-------------------------------------------------------------------\n");
  43. printf("\n\n 1 - 2 PAGINAS \n");
  44. printf(" ¿SIGUIENTEà pulse enter \n");
  45. system("clear");
  46.        printf("\n\n\t BIENVENID@S /*INSTRUCCIONES  \n\n");
  47.        printf("lea cuidadosamente lo siguiente \n\n");
  48.        printf("\n\t---------------------------------------------------------------------\n");// pag 2
  49.        printf("\t|                          INSTRUCCIONES:                           |\n");
  50.  
  51.        printf("\t---------------------------------------------------------------------\n");
  52.        printf("\n\n 2 - 2 PAGINAS \n");
  53.        printf(" ENTERADO...  pulse enter \n");
  54.        getchar();
  55. system("clear");
  56.        sleep(1);
  57.        printf("\n\t- - - - - - - - - - - - - - - \n");
  58.        printf("\t|  Ã‚¿ Quien desea ingresar?  |\n");
  59.        printf("\t- - - - - - - - - - - - - - -\n\n");
  60.        puts("0.- Terminar programa");
  61.        puts("1.- Administrador");
  62.        puts("2.- Usuariio\n");
  63. printf(">>");
  64. scanf("%d",&resp);
  65.  
  66. if (resp == 0)
  67. {
  68. exit(-1);
  69. }
  70.  
  71. if (resp == 1)
  72. {
  73. sel++;
  74. }
  75.  
  76. if (resp == 2)
  77. {
  78. sel = sel +2;
  79. }
  80.  
  81. }
  82.  
  83.  
  84. void administrador ()
  85. {
  86. printf("Bienvenido administrador \n");
  87. }
  88.  
  89.  
  90.  
  91. void usuario ()
  92. {
  93. printf("Bienvenido usuario \n");
  94. }
  95.  

La cosa es que quiero conectar el usuario y el administrador desde MAIN pero no puedo :( alguien me puede decir si me falta poner algo o me salte alguna otra cosa??




GRACIAS


· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex
4  Programación / Programación C/C++ / este codigo va por el camino correcto? en: 30 Abril 2017, 00:16 am
Código
  1. #include <stdio.h>
  2. void presentacion (void);
  3. int main()
  4. {
  5. presentacion();
  6.  
  7. return 0;
  8. }

Miren estoy haciendo este codigo bueno apenas voy empezando. mi pregunta es que debería escribir ´para que dentro de ese void se despliegue cierta información o sea quiero que salgo mi nombre, el nombre de la materia y la fecha según yo iría algo asi :

Código
  1. void presentacion()
  2. {
  3. printf(" \n mi nombre ");
  4. printf("  \n la materia");
  5. printf("\ fecha");
  6.  

les pido por favor que si ven que lo que escribo esta mal me lo hagan saber y me digan que debe ir masomenos y el porque o si le falta algo o asi, por favor
5  Programación / Programación C/C++ / juego de cuatro en linea en lenguaje C en: 22 Noviembre 2016, 18:26 pm
Hola! oigan tengo que hacer un código en lenguaje c pero no tengo idea de como hacerlo me confundo a la hora de escribirlo y no se si si agarre porque no tengo donde ejecutarlo y no se si esta bien o mal, no les pido que me den el codigo pero si que si me pueden orientar a como va a a ir el codigo porque de verdad no se que hacer estoy perdida.

me pidieron que deba tener estas características:




1- debe de ser un tablero de 10 x 10 casillas (ese es uno de mis principales prblemas no se como hacer el tablero)
2-o sea yo no voy a jugarlo si no que mi programa sera el arbitro

El programa puede ser ejecutado de varias maneras:
1. ./cuatro –h : el programa deberá desplegar una ayuda
sobre cómo ejecutar y usar el juego. Terminando de
desplegar la ayuda no hará nada más y terminará la
ejecución.
2. ./cuatro : Al comenzar el programa de esta manera,
debe aparecer en pantalla el nombre de las personas
que lo elaboraron. Se deberá esperar a que se presione
un enter para continuar. Posteriormente debe
desplegarse en pantalla un mensaje que explique
brevemente el objetivo y reglas del juego, y se deberá
esperar nuevamente a que se presione un enter para
comenzar a jugar. El programa deberá validar que las
entradas de los jugadores sean válidas e introducidas
con un formato correcto. El jugador deberá especificar
la columna en la que desea tirar su ficha.
El programa deberá validar que esa columna exista, que
no esté llena, y si algún jugador ganó.
En cualquier momento se puede elegir, en vez de la
columna a tirar, la letra ‘S’. Esto servirá para guardar
en un archivo de texto, la historia del juego. El nombre
del archivo se generará automáticamente y estará
formado por la fecha y la hora con el formato:
ddmmaa_hhmm.jgo

Para esto, se deberá haber llevado, en una lista
dinámica, la secuencia de tiros realizados, mismos que
serán guardados en el archivo.
El nombre del archivo deberá ser mostrado a los
jugadores para confirmar que quedó grabado y
enseñarles el nombre.
También se podrá introducir, en vez de una columna de
tiro, una ‘T’ de terminar, con lo que se deberá terminar
la ejecución del juego.

3. ./cuatro –r ddmmaa_hhmm.jgo : al ejecutarlo de esta
manera se deberá notificar a los jugadores que se
recuperará el juego con ese nombre, buscará el archivo,
en caso de no existir notificará y terminará la ejecución.
En caso de existir cargará la historia del archivo en una
lista dinámica y mostrará a los jugadores tirada por
tirada del juego guardado. Una vez que termine deberá
indicar de quien es turno y el juego podrá ser
reanudado entonces. Para mostrar cada jugada, el
jugador deberá presionar la letra ‘p’ (próxima) para ir
de jugada en jugada. En cualquiera de ellas se podrá
presionar la letra ‘c’; esto significará que el juego será
continuado a partir de esa jugada, debiendo descartar el
resto de jugadas guardadas.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines