Unable to display data on the console

Hi, I'm trying to get this code to work for a school project. I have my Arduino Uno hooked up to some proximity sensors. I'm trying to get the code to start timing a marble traveling between a few points on a track. I don't know what's wrong with the program. the only part of the program that is not working is the part where I try to print the data on screen in the console.

Heres the code.

unsigned long start, finished, elapsed;

void displayResult(){
Serial.begin(9600);
float h, m, s, ms;
unsigned long over, elapsed;
elapsed = finished - start;
h = int(elapsed / 3600000);
over = elapsed % 3600000;
m = int(over / 60000);
over = over % 60000;
ms = over % 1000;
Serial.begin(9600);
Serial.print("elaspsed time");
Serial.print( elapsed );
Serial.print(h, 0);
Serial.print("h ");
Serial.print(m, 0);
Serial.print("m ");
Serial.print(s, 0);
Serial.print("s ");
Serial.print(ms, 0);
Serial.print("ms");
}

int pin_setup(){
pinMode(6, INPUT);
pinMode(5, INPUT);
pinMode(4, INPUT);
pinMode(3, INPUT);
pinMode(2, INPUT);
}

int main(){
Serial.begin(9600);
if(digitalRead(6) == HIGH){
start = millis();
delay(200);
}
if(digitalRead(5) == HIGH){
finished = millis();
delay(200);
displayResult();
start = millis();
delay(200);
}
if(digitalRead(4) == HIGH){
finished = millis();
delay(200);
displayResult();
start = millis();
delay(200);
}
if(digitalRead(3) == HIGH){
finished = millis();
delay(200);
displayResult();
start = millis();
delay(200);
}
if(digitalRead(2) == HIGH){
finished = millis();
delay(200);
}
}

What does “not working” mean in this context?

I note you have a main () function, but what about the Arduino’s hidden init() function?

Did you deliberately choose to write your own main() function so that the hidden built in one, which does some initialisation that yours doesn't, is not used ?

Of course, the big advantage that Arduino’s loop function has over a simple main function is that it, well, loops.

Please remember to use code tags when posting code

(deleted)