No puedo procesar este archivo en programacion C

Iniciado por KISSY Snaks, 7 Agosto 2015, 17:37 PM

0 Miembros y 1 Visitante están viendo este tema.

KISSY Snaks

HOla!! necesito ayuda con este problema.
me dan este archivo: autos.txt

Orden;IDMARCA;MODELO;TIPO;PRECIO;AUMENTO;STOCK
entero;entero;25 caracteres;30 caracteres;decimal;decimal;entero
1;100;99 Cavalier;Descapotable;19.571,00;0,06;6

y este otro marcas.txt

100;Chevrolet
200;Chrysler
300;Dodge
400;Ford


El ejercicio dice:
1-procesar el aumento indicado en la columna correspondiente y grabar un nuevo archivo "autos_actualizado.csv"
2-Emitir por pantalla que marcas poseen un tipo "descapotable" y el costo total que pago po marca la concesionaria.
3-Emitir por pantalla el importe total.


Le agradezco de verdad si alguien me puede ayudar un poco aunque sea poque ya intente muchas veces pero me termina saliendo un frankeinten. Necesito alguna pista.
Muchas gracias

engel lex

muestra lo que llevas para poder corregir los errores
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

KISSY Snaks

#2
Código (cpp) [Seleccionar]
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>

void extraerDatos(char *linea, char *orden, int *idmarca, char *modelo, char *tipo, float *precio, float *aumento, int *stock){

char *cadIdmarca, *cadModelo, *cadTipo, *cadPrecio, *cadAumento, *cadStock;

strcpy(orden, strtok(linea,";"));


cadIdmarca=strtok(NULL,";");
*idmarca=atoi(cadIdmarca);

cadModelo=strtok(NULL,";");
*modelo=atof(cadIdmarca);

cadTipo=strtok(NULL,";");
*tipo=atof(cadTipo);

cadPrecio=strtok(NULL,";");
*precio=atoi(cadPrecio);

cadAumento=strtok(NULL,";");
*aumento=atoi(cadAumento);

cadStock=strtok(NULL,";");
*stock=atoi(cadStock);
}


main(){
char linea[2000];
char modelo[25];
char tipo[30];
char  orden;
int idmarca;


float precio;
float aumento;
int stock;

FILE *pArchivo=fopen("autos.txt", "r");

if (pArchivo!=NULL){
                       fgets(linea, 2000, pArchivo);


                       while(!feof(pArchivo)){
                                               extraerDatos(linea, &orden, &idmarca, modelo, tipo, &precio, &aumento, &stock);
                                               printf("%s %d %s %.2f %.2f %.2f %d", orden, idmarca, tipo, precio, aumento, stock);
                                               fgets(linea, 2000, pArchivo);

                                               }
                       fclose(pArchivo);

                       }


}



Mod: Los códigos deben ir en etiquetas GeSHi