Ajudinha em C

Pessoas estou fazendo um projeto pra faculdade onde tenho que calcular o tempo gasto por diversas funções de busca dentro de um vetor para achar um valor x…
O projeto passou duas funções de geração de números aleatórios para agente usar…
mais elas dão erro hora q eu compilo…
o Código é esse:


/* 
 * File:   main.c
 * Author: brunolopessalustiano
 *
 * Created on 18 de Novembro de 2011, 20:09
 */

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

/*
 * 
 */
int main(int argc, char** argv) {
    double hinicio, hfim, tempoGasto;
    double vet[100];
    int i, num;
    
        
    for(i=0;i<100;i++){
        vet[i]= unif(1234554321, 0, 100000);
    }
    hinicio = clock();
    buscaLinear(vet,87,100);
    hfim = clock();
    tempoGasto = hfim - hinicio;
    printf("Tempo gasto na Busca Linear doubles: &.2d/n", tempoGasto);
    
    return (EXIT_SUCCESS);
}



/**********************************************************
Algoritmo 1 Gerador de numeros reais aleatorios
**********************************************************/
double unif(long int *seed, double low, double high)
{
    double unif_ret;
    long int m,a,b,c, k;
    double value_0_1;
    m=2147483647;
    a=16807;
    b=127773;
    c=2836;
    k = *seed/b;
    *seed = a * (*seed % b) - k*c;
    if (*seed<0)
        *seed = *seed + m;
    value_0_1 = (double) *seed/m;
    unif_ret = low+value_0_1*(high - low);
    return (unif_ret);
}
//*********************************************************

/**********************************************************
Algoritmo 2 Gerador de numeros inteiros aleatorios
**********************************************************/
int inteiros_unif(long int *seed, int low, int high)
{
    int unif_ret;
    long int m,a,b,c, k;
    double value_0_1;
    m = 2147483647;
    a = 16807;
    b = 127773;
    c = 2836;
    k = *seed/b;
    *seed = a * (*seed % b) - k * c;
    if (*seed<0)
        *seed = *seed + m;
    value_0_1 = (double) *seed/m;
    unif_ret = low+value_0_1*(high-low+1);
    return (unif_ret);
}
//*********************************************************

/**********************************************************
Busca Linear
**********************************************************/
void buscaLinear(double vet[], int procurado, double tam){
    int i;
    for(i=0;i<tam;i++){
        if(vet[i]==procurado)
            i = tam;
    }
}
//*********************************************************

Quando executo dá os seguintes erros:

[quote]"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-MacOSX/atps
mkdir -p build/Debug/GNU-MacOSX
rm -f build/Debug/GNU-MacOSX/main.o.d
gcc -c -g -MMD -MP -MF build/Debug/GNU-MacOSX/main.o.d -o build/Debug/GNU-MacOSX/main.o main.c
main.c:38: error: conflicting types for 'unif’
main.c:21: error: previous implicit declaration of ‘unif’ was here
main.c:81: warning: conflicting types for 'buscaLinear’
main.c:24: warning: previous implicit declaration of ‘buscaLinear’ was here
make[2]: *** [build/Debug/GNU-MacOSX/main.o] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2

CONSTRUIR FALHOU (valor da saída 2, tempo total: 134ms)[/quote]

Ae não estou conseguindo corrigir…sou meio noob ainda em programação…=P
Se algum puder me ajudar eu ficarei muito grato!!!
Obrigado desde já…flw!!!

Boa noite KurinskLavinsk passei pelo mesmo processo na facul hoj foi meu ultimo dia de aula entao creio que posso ajudalo, vamos la

Segue abaixo o exemplo do metodo de ordenação boobleSort

void boobleSort(){
    void calcularTempo(double , double); //Prototipação do metodo que calcula o tempo gasto
    void lerArquivo(); //Prototipação
    void imprimir(); //Prototipação
    
    clock_t tempoInicio, tempoFim; //variaveis de tempo
    int i = 0;
    int temp = 0; 
    
    lerArquivo();
    tempoInicio = clock(); // recebe o tempo de inicio antes da ordenação
    
    for(int j = (TAM-1); j >= 0;j--){
		for(i = 0;i < j; i++){
			if(vet[i] > vet[i+1]){
				temp = vet[i];
				vet[i] = vet[i+1];
				vet[i+1] = temp;
			}
		}
	}

    imprimir();
    tempoFim = clock(); recebe o tempo de fim depois da ordenação   
    calcularTempo(tempoInicio, tempoFim);
}

metodo que calcula o tempo gasto e imprime

void calcularTempo(double tempoInicio, double tempoFim){
    double tempoGasto = ( (double) (tempoFim - tempoInicio) ) / CLOCKS_PER_SEC;
    printf("\n\n");
    printf("    --------------------------------------------------\n");
    printf("    | Esta operacao foi realizada em: %2.3f segundos |\n",tempoGasto);
    printf("    --------------------------------------------------\n");
    getch();
    menu();
}

espero ter ajudado pois tive uma dor de cabeça tremenda com isso, até +

Diferentemente do Java, para você chamar um método, é necessário que ele esteja pelo menos declarado antes de ser usado. O compilador C, se achar uma chamada a um método antes de ele ser declarado, chuta uma declaração (veja a linha 21) e depois reclama (quando achar a declaração de verdade - veja a linha 38 ). Você pode ter percebido isso porque os seguintes dois erros ocorreram:

main.c:38: error: conflicting types for 'unif'
main.c:21: error: previous implicit declaration of 'unif' was here 

A solução para esse problema é posicionar o método ?“unif” antes do seu uso em “main” . O mesmo problema ocorreu com o método “inteiros_unif”.