Buenas me presento mi nombre es jesus, antes que nada le doy las gracias a los que me ayuden y les pido disculpas si el tema ya fue creado.
El asunto es el siguiente estoy empezando con manejo de archivos, en txt y estoy tratando de hacer un ejercicio pero no doy en el clavo. Es bastante sencillo pero no logro hacer que imprima las 2 columnas como mustra el ejercicio siguiente--->
en un txt estan los empleados y en otro txt los Id y los sueldos.
Escribir un programa que lea estos archivos y genere el siguiente listado.
"EMPLEADO" "DINERO POR HORA"
======== ==============
Juan García 7.50
Ana Fernández 8.75
Lidia Martínez 9.35
Héctor López 10.50
Sebastián Azcurra 6.35
no logro imprimir las segunda columna donde solo me imprima el dinero por hora y no los Id y el precio a pagar.
les dejo mi codigo con lo que tengo hasta ahora
#include <stdio.h>
#include <stdlib.h>
FILE *hola;
FILE *costo;
void carga(FILE *hola);
void unir(FILE *costo);
void unir2(FILE *hola);
void carga2(FILE *costo);
int main(int argc, char *argv[]) {
carga(hola);
carga2(costo);
unir(costo);
return 0;
}
void carga(FILE *hola)
{
hola=fopen("hola.txt","w");
float i;int h;int j;
for(h=0;h<3;h++)
{
system("cls");
printf("ingrese matricula:");
scanf("%d",&j);
fprintf(hola,"%d\t",j);
printf("ingrese precio:");
scanf("%f",&i);
fprintf(hola,"%.2f\n",i);
}
fclose(hola);
}
void unir(FILE *costo)
{
costo=fopen("costo.txt","r");
hola=fopen("hola.txt","r");
int c;int h; int m;int g;
if(costo==NULL && hola==NULL)
{
printf("no se puede abrir el archivo\n");
}
while((m=fgetc(hola))!=EOF)
{
fscanf(hola,"%f",&g);
}
printf("%f",g);
printf("%-10s %-20s\n\n","nombre","saldo");
while((c=fgetc(costo))!=EOF)
{
printf("%c" ,c);
}
fclose(hola);
fclose(costo);
}
void carga2(FILE *costo)
{
costo=fopen("costo.txt","w");
int h;
char nom[50];
for(h=0;h<3;h++)
{
system("cls");
printf("ingrese nombre:");
fflush(stdin);
gets(nom);
fprintf(costo,"%s\n",nom);
}
fclose(costo);
}
les pido disuclpas por el nombre de las variables y de las funciones es un borrador.
cualquier ayuda sera bienvenida y muchas gracias de nuevo.
El asunto es el siguiente estoy empezando con manejo de archivos, en txt y estoy tratando de hacer un ejercicio pero no doy en el clavo. Es bastante sencillo pero no logro hacer que imprima las 2 columnas como mustra el ejercicio siguiente--->
en un txt estan los empleados y en otro txt los Id y los sueldos.
Escribir un programa que lea estos archivos y genere el siguiente listado.
"EMPLEADO" "DINERO POR HORA"
======== ==============
Juan García 7.50
Ana Fernández 8.75
Lidia Martínez 9.35
Héctor López 10.50
Sebastián Azcurra 6.35
no logro imprimir las segunda columna donde solo me imprima el dinero por hora y no los Id y el precio a pagar.
les dejo mi codigo con lo que tengo hasta ahora
#include <stdio.h>
#include <stdlib.h>
FILE *hola;
FILE *costo;
void carga(FILE *hola);
void unir(FILE *costo);
void unir2(FILE *hola);
void carga2(FILE *costo);
int main(int argc, char *argv[]) {
carga(hola);
carga2(costo);
unir(costo);
return 0;
}
void carga(FILE *hola)
{
hola=fopen("hola.txt","w");
float i;int h;int j;
for(h=0;h<3;h++)
{
system("cls");
printf("ingrese matricula:");
scanf("%d",&j);
fprintf(hola,"%d\t",j);
printf("ingrese precio:");
scanf("%f",&i);
fprintf(hola,"%.2f\n",i);
}
fclose(hola);
}
void unir(FILE *costo)
{
costo=fopen("costo.txt","r");
hola=fopen("hola.txt","r");
int c;int h; int m;int g;
if(costo==NULL && hola==NULL)
{
printf("no se puede abrir el archivo\n");
}
while((m=fgetc(hola))!=EOF)
{
fscanf(hola,"%f",&g);
}
printf("%f",g);
printf("%-10s %-20s\n\n","nombre","saldo");
while((c=fgetc(costo))!=EOF)
{
printf("%c" ,c);
}
fclose(hola);
fclose(costo);
}
void carga2(FILE *costo)
{
costo=fopen("costo.txt","w");
int h;
char nom[50];
for(h=0;h<3;h++)
{
system("cls");
printf("ingrese nombre:");
fflush(stdin);
gets(nom);
fprintf(costo,"%s\n",nom);
}
fclose(costo);
}
les pido disuclpas por el nombre de las variables y de las funciones es un borrador.
cualquier ayuda sera bienvenida y muchas gracias de nuevo.