I'm not certain, but I seen to remember having a problem with doing an analogRead on the declaration line. Try this, instead.
/*
ReadAnalogVoltage
Reads an analog input on pin 0, converts it to voltage, and prints the result to the Serial Monitor.
Graphical representation is available using Serial Plotter (Tools > Serial Plotter menu).
Attach the center pin of a potentiometer to pin A0, and the outside pins to +5V and ground.
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/ReadAnalogVoltage
*/
// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
}
// the loop routine runs over and over again forever:
void loop() {
// read the input on analog pin 0:
int sensorValue; // Declare...
sensorValue = analogRead(A0); // ...then do the analogRead.
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (5.0 / 1023.0);
// print out the value you read:
Serial.println(voltage);
}
Also, consider declaring variables outside of the loop function. The doing it in the loop means it must be placed on the stack/removed from the stack, over and over, each time the loop function is called. Not a big deal, but could impact timing in some future implementation, and if you are in the habit of doing this, but are not cognizant of the implication, it could result in a nasty debugging session
[unless compiler optimization has become more sophisticated since the time I learned C so many decades ago
]