Búsqueda personalizada
Regístrate gratis para participar de los foros, o si ya estás registrado haz login.
| comentario del autor | Jue Jul 02, 2009 1:56 am | |
|
#include <stdio.h> #include <stdlib.h> #include <conio.h> int op,i,numcandi,cont=0; int buscar(int codigo); struct inventario { char nombre[20]; char artista[20]; unsigned int codigo; unsigned int precio; unsigned int existencias; unsigned int id; }; struct inventario accede[5]; int menu() { system("cls"); printf("\n\n\n\n\n\n\t\t ***** Sistema de Tienda de Discos *****"); printf("\n\t\t *\t\t\t\t\t *"); printf("\n\t\t *\t 1.- Captura\t\t *\n"); printf("\t\t *\t 2.- Ventas por Artista\t *\n"); printf("\t\t *\t 3.- Ventas por Album\t *\n"); printf("\t\t *\t 4.- Busqueda\t\t *\n"); printf("\t\t *\t 5.- Salir de Sistema\t *\n"); printf("\t\t *\t\t\t\t\t *\n"); printf("\t\t *****************************************\n"); printf("\t\t\t Opcion: "); scanf("%d",&op); if(op>5 || op<1) { system("cls"); printf("\n\n\n\n\n\n\n\n\n\t\t\t Tecle la opcion correcta\n"); system("PAUSE"); menu(); } }; int captura() { system("cls"); printf("Introduce el numero de discos a capturar:"); scanf("%d",&numcandi); for(i=1 ; i<numcandi+1 ; i++) { printf("ID: "); scanf("%d",&accede[i].id); printf("Nombre de disco %d: ",i); scanf("%s",&accede[i].nombre); printf("Nombre de artista %d: ",i); scanf("%s",&accede[i].artista); printf("Año de publicacion: "); scanf("%d",&accede[i].codigo); printf("Numero de unidades existentes: "); scanf("%d",&accede[i].existencias); printf("Precio: "); scanf("%d",&accede[i].precio); system("cls"); } }; int mostrar() { system("cls"); char artist[20]; printf("Introduce el artista a buscar:"); scanf("%s",&artist[20]); for(i=1 ; i<=5 ; i++) { if(accede[i].id==0 && accede[i].artista==artist[i]) { return 0; } else { printf("ID: %d",accede[i].id); printf("\nNombre de disco %s: ",accede[i].nombre); printf("\nNombre de artista %s: ",accede[i].artista); printf("\nAño de publicacion: %d",accede[i].codigo); printf("\nNumero de unidades existentes: %d",accede[i].existencias); printf("\nPrecio: %d",accede[i].precio); system("PAUSE"); system("cls"); } } }; //funcion main// int main(int argc, char *argv[]) { char re; int publicacion; int codigo; int Posicion; do { menu(); switch(op) { case 1: { captura(); } break; case 2: { mostrar(); } break; case 3: { } break; case 4: { } break; case 5: return 0; } } while (op!=0); system("PAUSE"); return 0; } mi problema en si es que al momento de que mando llamar la funcion de mostrar, le pongo que me busque por ejemplo al artista mana, pero cuando compara jamas entra en el if y no me toma la comparacion, alguien que me pueda ayudar para poder hacer la comparacion y que me muestre los datos que ahi quiero mostrar. Gracias de antemano. |
||
| asistió a la solución | Jue Jul 02, 2009 9:38 pm | |
|
if(accede[i].id==0 && accede[i].artista==artist[i]) puede que debas usar la funcion strncmp() en ese if porque estas queriendo comparar 2 cadenas tambien verifica que se haya ingresado bien el scanf("%s",&artist[20]); imprimiendo nuevamente lo que tienes en artist[20] Saludos |
||