Por que no funciona mi código de c?

Funciona perfecto en el caso 1 pero no funciona en los casos 2 y 3 que solo es cuestión de imprimir en pantalla al parecer hay algún error.

1 respuesta

Respuesta

Anexo mi código

#include <stdio.h>
#include <stdlib.h>

struct poligono{
int nver;
int x;
int y;
}poligonos[100];

int area(int z,int y)
{
int x=0,area=0,i,a1=0,total=0;
system("cls");
printf("\ningrese el numero de vertices de tu poligono %d:\n",z);
scanf("%d", &poligonos[100].nver);

for (i=0;i<poligonos[100].nver+1;i=i+1){
system("cls");
printf("ingrese los pares ordenados de x,y del vertice %i\n",i+1);
scanf("%d",&poligonos[i].x);

scanf("%d",&poligonos[i].y);
}

for (i=0;i<poligonos[100].nver;i=i+1){
area =((poligonos[i].x)*(poligonos[i+1].y))+((-1)*((poligonos[i+1].x)*(poligonos[i].y)));
a1=a1+area;
}
total=a1/2;
if(total<0)
{
total=total*(-1);
}
return total;
}

int main(void)
{
int z=0,y=0,c=0,i,x=0,n,opc,k,j;
int datos[j];
int may[n];
// while(opc!=4)
// {
system("cls");
printf("Programa para determinar el area de k cuadrilateros\n ");
printf("ingrese su opcion:\n");
printf("1.-Ingresar datos por teclado\n");
printf("2.-Ingresar datos por archivo\n");
printf("3.-Visualizar poligonos capturados\n");
printf("4.-Salir\n");
scanf("%d",&opc);
switch(opc)
{
case 1: //comparar areas por teclado
system("cls");
printf("cuantos poligonos deseas evaluar:\n");
scanf("%d", &y);
for(j=0;j<y;j++)
{
z++;
datos[j]=area(z,y);
}

for(i=0;i<y;i++)
{
may[i]=datos[i];
if(may[i]>c)
{
c=may[i];
x=i;
}
else{
}
printf("area poligono %d: %d\n",i+1,datos[i]);
}

printf("poligono %d tiene area mayor que es:%d\n",x+1,c);
system("pause");
printf("hola2");
break;
case2:
//va lo de opcion 2
break;
case3: //informacion de cuadrilateros
break;
case 4:
break;
/* default:
if(opc<1 || opc>4)
system("cls");
{
printf("Error digita una opcion valida\n");
}
system("pause");
*/
}

//}
return 0;
}

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas