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

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda programa de orden de nombres
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda programa de orden de nombres  (Leído 1,341 veces)
Jay

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Ayuda programa de orden de nombres
« en: 11 Abril 2019, 22:49 pm »

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


 int main() {

typedef struct{

char nombrecliente[20][20];
int numpedido;



}pedido;


typedef struct{
int numcliente;
char direccion[20][20];
pedido p_nombrecliente;
pedido p_numpedido;



}servicio;


servicio P[10];

int i, j, m;
char aux[20];

for(i=0; i<1; i++){
printf("nombre: \n");
scanf("%s", &P.p_nombrecliente);
fflush(stdin);

printf("Ingresa tu numero de cliente: \n");
scanf("%d", &P.numcliente);


//printf("Tu numero de cliente es: %d", &P.numcliente);
printf ("Direccion: \n");
scanf("%s", &P.direccion);
fflush(stdin);
printf("numero de pedido: \n");
scanf("%d",&P.p_numpedido);

}

for(i=0; i<2; i++)
for(j=i+1; j<1; j++)
if(strcmp(P.p_nombrecliente, P[j].p_nombrecliente) > 0)
{
strcpy(aux, nombre);
strcpy(P.p_nombrecliente, P[j].p_nombrecliente);
strcpy(P.p_nombrecliente, aux);
}

no se que estoy haciendo mal al ordenar los nombres alfabeticamente y necesito las estructuras


En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 444



Ver Perfil WWW
Re: Ayuda programa de orden de nombres
« Respuesta #1 en: 12 Abril 2019, 00:28 am »

Por qué tienes nombrecliente definido como un array bidimensional?


En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: Ayuda programa de orden de nombres
« Respuesta #2 en: 12 Abril 2019, 00:37 am »

Como te han dicho, tanto la variable <nombrecliente> de <pedido> como <direccion> de <servicio> deberían ser arrays unidimensionales ya que solo vas a guardar una cadena de caracteres en cada uno de ellos.

Además dentro de <servicio> estás declarando dos <pedido> cuando creo que sólo quieres declarar uno. Un objeto de tipo <pedido> lleva internamente dos variables: el nombre del cliente <nombrecliente> y el número del pédido <numpedido>. No tiene sentido que vuelvas a crear dos objetos <pedido> en <servicio>. Y si era eso lo que querías hacer y en cada <servicio> guardar dos <pedidos>, te recomiendo cambiarles el nombre porque no se corresponden con la realidad.

Aparte de un par de <fflush(stdin)> que no se recomiendan ya que la función <fflush()> se ha diseñado para limpiar el buffer de salida <stdout>. El comportamiento con el buffer de entrada <stdin> no está definido por lo que puede ser indeterminado.

PD: Coloca tu código entre etiquetas de código GeSHi (hay un menú desplegable encima del cuadro de texto para seleccionar el lenguaje apropiado, C++ en este caso) para recibir más ayuda. Ya que la falta de etiquetas provoca una mala interpretación del código además de que es más complicado de ver y corregir.

Suerte :-X
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
programa para ordenar nombres alfabeticamente
Programación Visual Basic
elcoc_o 2 5,882 Último mensaje 18 Octubre 2010, 19:04 pm
por Psyke1
Programa que simule la orden find
Programación C/C++
kioso_89 1 2,834 Último mensaje 26 Noviembre 2010, 23:40 pm
por Littlehorse
Programa para separar nombres
Programación General
Jesuscc29 1 3,736 Último mensaje 28 Febrero 2014, 21:36 pm
por El Benjo
Programa para poner nombres
Java
supLord 1 1,415 Último mensaje 12 Julio 2014, 11:07 am
por Slider324
Los antivirus analizan los nombres de las funciones de tu programa ?
Análisis y Diseño de Malware
patilanz 7 4,806 Último mensaje 28 Enero 2015, 23:40 pm
por Rodri_GO
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines