28/07/2013, 16:35
|
| | Fecha de Ingreso: octubre-2009
Mensajes: 4
Antigüedad: 15 años, 2 meses Puntos: 0 | |
Respuesta: Problema con matrices Antes del main y el mismo:
Código:
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <string.h>
void imprimir_menu ();
void login (int [] [13],int [] [13], int [], int []);
void ingr_datos (int [] [13],int [] [13], int [], int []);
void opcion_x ();
void menu_sin0 (int [] [13],int [] [13], int [], int []);
int main () {
int MD [61] [13] = {0};
int ME [61] [13] = {0};
int Vvalor [4] = {0};
int VS [61] = {0};
login (MD, ME, Vvalor, VS);
}
Login contiene a todas las otras funciones, por eso estan declaradas las matrices y demás. Esta la función para cargar las matrices y vectores (estoy 100% seguro que algo esta mal acá):
Código:
void ingr_datos (int MD [61] [13],int ME [61] [13], int Vvalor [4], int VS [61]) {
int Vmes [13];
int i,m;
char desc [4][30];
int nlegajo, cat;
int ch;
printf("----CARGA DE DATOS---- \n");
for (i=1;i<=3;i++) {
printf("Ingrese descripcion de categoria: ");
scanf("%s",& desc[i]);
printf("Ingrese valor de categoria: ");
scanf("%d",& Vvalor[i]);
}
printf ("Ingrese numero de legajo: ");
scanf("%d",& nlegajo);
while (nlegajo!=0) {
printf ("Ingrese categoria: ");
scanf("%d",& cat);
for (m=1;m<=12;m++){
printf("Ingrese cantidad de horas trabajadas por mes %d: ",m);
scanf("%d",&ch);
Vmes[m]=Vmes[m]+ch;
MD[nlegajo][m]= MD[nlegajo][m]+ch;
ME [nlegajo] [m] = (ME [nlegajo] [m] + (ch*Vvalor[cat]));
}
printf ("Ingrese numero de legajo: ");
scanf("%d",& nlegajo);
}
system ("pause");
}
Y esta es la función donde intento imprimir todo:
Código:
void menu_sin0 (int MD [61] [13],int ME [61] [13], int Vvalor [4], int VS [61]) {
int opcion;
printf("Ingrese la opcion deseada: ");
scanf("%d",& opcion);
switch (opcion)
{
case 1:
for (f=1;f<=60;f++) {
for (c=1;c<=12;c++) {
printf("Sueldo: %d", ME [f] [c]);
}
}
break;
case 2:
printf ("\n");
break;
case 3:
printf ("\n");
printf("proximamente3");
break;
case 4:
printf ("\n");
printf("proximamente4");
break;
case 10:
exit (1);
break;
}
}
Seguro hay algun integer que no se usa, es porque probe demasiadas cosas la verdad. |