Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: SSMACHINE en 28 Octubre 2016, 17:34 pm



Título: Progrmacion en C ¿Como hacer para que me imprima los caracteres!?
Publicado por: SSMACHINE en 28 Octubre 2016, 17:34 pm
eh realizado un codigo mediante estructuras que trata sobre el ingreso de una cierta cantidad de personal de parte del usuiario sus nombre y la ganancia del dia y al final imprima quien fue el que menos gano y cuanto solo que lo que no puedo hacer es imprimir el nombre de quien fue el que menos gano , solo puedo imprimir su ganancia ! :(

lo hice en code blocks cualquier cometario o ayuda para mejorar en cualquier aspecto es bien recibida!
Código
  1. #include <stdlib.h>
  2. #include <string.h>
  3. #include <conio.h>
  4.  
  5. typedef struct Conductores
  6. {
  7. int Bv;
  8. char Nconductor[70];
  9. }Conductores_C;
  10.  
  11. int main()
  12. {
  13.  Conductores_C C1[100],C2[100];
  14.  int n_conductor=0;
  15.  int total_conductores;
  16.  int aux;
  17.  
  18. printf("\n\nIngrese primeramente el total de camioneros: ");
  19. scanf("%i",&total_conductores);
  20. printf("\n___________________________________________________________________________\n___________________________________________________________________________\n\n");
  21. while(total_conductores>99||total_conductores<1){printf("Sobre paso el limite!!Error, Ingrese nuevamente el total de conductores: ");
  22. scanf("%i",&total_conductores);
  23. printf("\n");
  24. }
  25. fflush(stdin);
  26. while(n_conductor<total_conductores)
  27.  {
  28.      fflush(stdin);
  29.      printf("Ingrese el nombre del conductor: ");
  30.      scanf("%s",&C1[n_conductor].Nconductor);
  31.      fflush(stdin);
  32.      printf("Ingrese la ganancia del dia: ");
  33.      fflush(stdin);
  34.      scanf("%i",&C1[n_conductor].Bv);
  35.      n_conductor++;
  36. }
  37. int x=0;
  38. C2[x].Bv=C1[0].Bv;
  39. //C2[x].Nconductor=C1[0].Nconductor;
  40.  
  41. for(aux=0;aux<n_conductor;aux++)
  42. {
  43.   if(C2[x].Bv>C1[aux].Bv)
  44.   {
  45.       C2[x].Bv=C1[aux].Bv;
  46. }
  47. }
  48. printf(" es el que menos vendio con un total de %i pesos",C2[x].Bv);
  49.    return 0;
  50. }
  51.  


Mod: Los códigos deben ir en etiquetas GeSHi


Título: Re: Progrmacion en C ¿Como hacer para que me imprima los caracteres!?
Publicado por: MeCraniDOS en 29 Octubre 2016, 11:06 am
al final imprima quien fue el que menos gano y cuanto solo que lo que no puedo hacer es imprimir el nombre de quien fue el que menos gano , solo puedo imprimir su ganancia ! :(

Código
  1. printf("%s es el que menos vendio con un total de %d pesos", C2[x].Nconductor, C2[x].Bv);


Título: Re: Progrmacion en C ¿Como hacer para que me imprima los caracteres!?
Publicado por: MAFUS en 31 Octubre 2016, 01:40 am
C2 no hace falta que sea un array de 1 solo elemento, basta sea una variable.

En la línea 39 deberías hacer un strcpy para copiar el valor de C1[0].Nconductor a C2.Nconductor.
De igual forma deberías hacer en una nueva línea después de la 45.