Falha de segmentação (imagem do núcleo gravada)

1. Falha de segmentação (imagem do núcleo gravada)

Francisco Oliveira
FXGO

(usa Ubuntu)

Enviado em 25/01/2017 - 16:54h

Ola pessoal
Estava fazendo um ex de treino para a prova que terei na sexta de programação C.
Estava fazendo um programa, que compilou sem erros e sem warnings, mas ao executa-lo ocorre sempre o erro de falha de segmentação (imagem do núcleo gravada)

Não estou entendendo o que possa ser, já revi o programa montes de vezes e não encontro problema algum. Podem me ajudar?

Deixarei aqui o codigo:

#include <stdio.h>
#include <stdlib.h>
#define NMAX 100

int ler_acessos(int *tempos);
void stats (int *tempos, int n, int *min, int *max, float *med);

int main()
{
int x, y, z, W, cont=2;
int *max, *min;
int tempos[NMAX];
float *med;


while (scanf("%d %d", &x, &y)==2)
{
z=y-x;
tempos[cont-1]=z;
cont++;

}

tempos[0]= cont-1;

W=ler_acessos(tempos);

printf("Numero de acessos:%d", W);

stats(tempos, cont-1, min, max, med);


return 0;
}

int ler_acessos(int *tempos)
{
int x=tempos[0], z=0, acess=0, y, w=2;

while(z<=x)
{
if (tempos[z+1]<120)
{
y=tempos[z+1];
while(y<120)
{
y=y+tempos[z+w];
w++;
}
acess++;
z=z+w;
}

else
{
acess++;
z++;
}

}

return acess;
}

void stats (int *tempos, int n, int *min, int *max, float *med)
{
int sum=0, x=n;

*max=tempos[n];
*min=tempos[n];

while(n>0)
{
sum=sum+tempos[n];

if (tempos[n]>(*max))
{
*max=tempos[n];
}

if (tempos[n]<(*min))
{
*min=tempos[n];
}
n--;
}

*med=(float)sum/x;

printf("Min:%d | Max:%d | Med:%f", *min, *max, *med);
}



  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts