Bounds on the number of zeros of real analytic functions Let $F(A)$ be a class of real-analytic function on an interval $A \subset \mathbb{R}$ minus the zero function. 
We have the following theorem for $F(A)$.

If  $f \in F(A)$ then $f$ has at most finitely many zeros $A$.

Proof Suppose $f\in F(A)$ has infinitely many zeros on a bounded interval. Then by Bolzano-Weierstrass the set of zeros has a  convergent subsequence in $A$. Therefore, by identity theorem, $f$ must be zero on all of $A$.
However, this contradicts our assumption that $f$ is non-zero. Q.E.D. 
My question:   Are there ways of sharpening the bound on the number of zeros?  
Let $N(f)$ be the number of zeros of $f$. Clear, there is no uniform bound on $N(f)$ for all $f\in F$. 
However, there a subset of $F$ for which we do have good upper bounds like a set of polynomials of degree $n$ in which case $N\le n$.  
My second question (or refined first question) is: For a give $f$ which is analytic on $A$, but not a polynomial, are there ways of finding an upper bound on the number zeros of $f$?  
 A: As noted by the comments, you must require that your interval $A$ is compact (otherwise, $\sin(1/x)$ has infinitely many zeroes on $\mathopen]0;1\mathclose[$. 
Moreover, you cannot have a bound valid for every class $F(A)$, even if it only consists of polynomials — there are nonzero polynomials with as many zeroes as you wish on your interval $A$.
However, such polynomials will have unbounded degree.
This is a typical theme in o-minimality: if you bound the complexity of your class of functions, then there is a bound on the number of zeroes. 
In some cases, this bound can be effective. For exemple, if $F(A)$ consists
of exponential polynomials with at most $m$ terms of the form $x^\alpha e^{\beta x}$, then the number of zeroes is bounded from above by something like $m-1$ (without guarantee...). You can find such results in Khovanskii's book Fewnomials.
A: As Igor Khavkine commented, the basic tool is the Argument Principle. 
Given your $f$ in question 2, you want to find a neighbourhood $U$ of $A$ in $\mathbb C$ in which $f$ is analytic, and then take a closed contour $\Gamma$ in $U$ enclosing $A$.  How you find such a $U$ will depend on how you know $f$ is real-analytic on $A$.  If you can numerically approximate $\frac{1}{2\pi i}\oint_\Gamma \frac{f'(z)}{f(z)}\; dz$ with an error $< 1/2$, rounding that approximation gives you the number of zeros inside $\Gamma$, and thus an upper bound on the number of zeros on $A$.
