C/Visual C - ordenar listado

 
Vista:

ordenar listado

Publicado por ricardo (1 intervención) el 14/03/2010 01:10:29
tengo el siguien problema
estoy aciendo un programa q lea un listado y lomuestro por orden alfabetico( el usuario pide desde q letra comiensa)
y tengo esl codigo asi

#include<iostream>
#define tam 3
using namespace std;
//definicion estructura
struct producto
{
int codigo;
char nombre[50];
float precio;
};
//definicion prototipos
void lea(struct producto prod[]);
void ordena(struct producto prod []);
void escriba(struct producto prod []);
//funcion principal
main()
{
struct producto prod[tam];
lea(prod);
ordena(prod);
//escriba(prod);
system("pause");
}
//leer datos
void lea(struct producto prod[])
{
int c,n=0,i;
FILE *ptr;
if((ptr=fopen("c:\\listado.txt", "r"))==NULL){
cout<<"no se puede abrir"<<endl;

for(i=0; i<tam; i++)
{


cin>>prod[i].nombre;

cout<<endl;
}




exit(-1);




}
cout<<"equipo \n\n "<<endl;
while((c=getc(ptr))!=EOF){
if(c=='\n'){
n++;
cout<<endl;
int i;


}
else
putchar(c);
}
}
//mostrar datos


void ordena(struct producto prod [])
{

cout<<"listado de nombre"<<endl;
int c, i, j;
char cad[20];
float pr;
cout<<"ordena productos por nombres"<<endl;
for(i=0; i<tam; i++)
for(j=i+1; j<tam; j++ )
if(stricmp(prod[i].nombre,prod[j].nombre)<0)
{
c=prod[i].nombre;
prod[i].nombre=prod[j].nombre;
prod[j].nombre=c;

pr=prod[i].nombre;
prod[i].nombre=prod[j].nombre;
prod[j].nombre=pr;
}
}

no se q error(es) tengo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder