Tengo que hacer un ejercicio, lo hize pero me tira error en algo que no tengo ni la más idea como es. Dejo el codigo aver si alguno me entiende y me lo corrije.
#include <stdio.h>
#include <conio.h>
#include <string.h>
void menu1 (int);
void idatos (int);
void menu2(int);
void pto1(int);
void pto2(char);
void pto3(int);
void pto4(int);
int main ()
{
//Datos registrados
char s1[]="asd";
char s2[]= "asd2";
//Verificacion de datos
char usuario[32];
char contrasena[32];
//Enteros
int i,k,j,menu;
//Comienzo para los intentos de contraseña, maximo 3
for(i=1;i<=3;i++)
{
printf("\nIngrese usuario: ");
scanf("%s",&usuario);
k = strcmp( s1, usuario );
if (k != 0)
{
printf("\nUsuario incorrecto\n");
}
if(k == 0)
{
printf("\nIngrese contrasena: ");
scanf("%s",&contrasena);
j = strcmp( s2, contrasena);
if (j == 0)
{
printf("\nDatos correctos\n");
printf("\nBienvenido al programa del servicio penintenciario\n");
printf("\n");
printf("\n");
menu1(menu);
//Comienzo de Switch Menu
getch();
}
if(j != 0)
{
printf("\ncontrasena incorrecta\n");
}
}
}
}
void menu1(int a)
{
printf("*********Menu**********\n");
printf("\n1-Cargar datos\n2-Resultado punto A\n3-Resultado punto B\n4-Resultado punto C\n5-Resultado punto D\n6-Salir del sistema\n");
printf("\nPor favor elija una opcion: ");
scanf("%d",&a);
while (a!=1)
{
printf("Elija otra opcion");
scanf("%d",&a);
}
switch (a)
{
case 1:printf("Por favor ingrese los datos\n");
int b;
idatos(b);
break;
case 2:printf("Opcion no disponible sin la carga de datos");
break;
case 3:printf("Opcion no disponible sin la carga de datos");
break;
case 4:printf("Opcion no disponible sin la carga de datos");
break;
case 5:printf("Opcion no disponible sin la carga de datos");
break;
case 6:getch();
break;
}
}
void idatos(int a)
{
int i;
for(i=1;i<=10;i++)
{
int j;
for(j=1;j<=40;j++)
{
int nr,np,nc,ll,cp,c,cont;
nr=np=nc=ll=cp=cont=0;
int Mll[10][40]={0};
int Mct[10][40]={0};
int VP[10];
printf("Ingrese numero de recluso");
scanf("%d",&nr);
printf("Ingrese numero de piso\n");
scanf("%d",&np);
printf("Ingrese numero de celda\n");
scanf("%d",&nc);
printf("Ingrese numero de lugares libres\n");
scanf("%d",&ll);
printf("Ingrese numero de capacidad total\n");
scanf("%d",&cp);
while(nr!=0)
{
char appnom[32];
printf("Ingrese nombre y apellido");
gets(appnom);
int x,f,c;
x=0;
for(f=1;f<=10;f++)
{
for(c=1;c<=40;c++)
{
if(Mll[f][c] > 0 && x==0)
{
x=1;
Mll[f][c]=Mll[f][c]-1;
}
}
if(x==0)
{
cont=cont+1;
}
}
}
printf("*********Menu**********\n");
printf("\n1-Resultado punto A\n3-Resultado punto B\n4-Resultado punto C\n5-Resultado punto D\n6-Salir del sistema\n");
printf("\nPor favor elija una opcion: ");
scanf("%d",&a);
switch (a)
{
case 1:pto1(cont);
break;
case 2:pto2(appnom);
break;
case 3:pto3(Mll[10][40]);
break;
case 4:pto4(VP[10]);
break;
case 5:getch();
break;
}
printf("\nPor favor elija una opcion: ");
scanf("%d",&a);
}
}
}
}
void pto1(int cont)
{
printf("%d no pudieron ser alojados por falta de lugar",cont);
}
void pto2(int appnom)
{
printf("Los rechazados son:\n%c\n",appnom);
}
void pto3(int a)
{
for(a=1;a<=10;a++)
{
int c;
for(c=1;c<=40;c++)
{
if(Mll[f][c] > 0)
{
printf("Para el piso %d, la celda %d tiene aun disponibilidad",a,c);
}
}
}
}
void pto4(int a)
{
for(a=1;a<=10;a++)
{
int c;
for(c=1;c<=40;c++)
{
VP[a]=VP[a]+Mct[a][c]-Mll[a][c];
}
}
Max=VP[a];
aux=a;
int i;
for(i=1;i<=10;i++)
{
if(VP[a] > Max)
{
Max=VP[i];
aux=i;
}
}
for(i=aux;i<=aux;i++)
{
if(VP[i]==Max)
{
printf("El piso mas lleno es el piso %d",i)
}
}
}
}