1) The main idea is to replace n with 2^n everywhere in the classic density of Q in R proof.
We want to show that for any a, b in R with a < b,
we can produce integers m, n such that a < m/2^n < b.
Assume without loss of generality that a, b > 0.
[If a <= 0 and b > 0, consider the subinterval (b/2, b), and find a dyadic rational
there using the discussion below.
If a,< 0 and b <= 0, then by below we can find a dyadic rational c in (-b, -a);
multiply that by -1 to get one in (a, b).]
---------------------
(i) By Archimedes, pick n large enough so that 1/2^n < b - a.
(ii) So, a < m/2^n < b <==> a * 2^n < m < b * 2^n.
With n now chosen, the idea is to choose m to be the smallest positive integer
greater than a * 2^n. i.e, pick m in M so that m - 1 <= a * 2^n < m. (**)
The right half of (**) implies that a < m/2^n, giving half the desired inequality.
Next, rewriting 1/2^n < b - a in the form a < b - 1/2^n, use the left half of (**)
m <= a * 2^n + 1 < (b - 1/2^n) * 2^n + 1 = b * 2^n.
Thus, m < b * 2^n ==> m/2^n < b.
(iii) Putting this altogether, we get a < m/2^n < b, as required.
-----------------------
2) For fixed n, fn is certainly Riemann integrable (as the set of discontinuities are countable); however {f_n} converges (as n tends to infinity) to a function f which is not Riemann integrable. That's where the density arguments can enter the problem.
Link:
http://books.google.com/books?id=4hhFXPdTXwoC&pg=PA243&lpg=PA243&dq=fn%28x%29+is+not+integrable,+where+fn%28x%29+%3D+1+if+x+%3D+k/%282^n%29+where+k+is+a+natural+number+0+otherwise&source=bl&ots=b9AgL9TWXJ&sig=AwGFRbfMUxIc_o2AZitmPYvXjug&hl=en&ei=-oXcTpyWN6iXiAL97qzGCQ&sa=X&oi=book_result&ct=result&resnum=8&sqi=2&ved=0CFgQ6AEwBw#v=onepage&q&f=false
More precisely, f(x) = 1 if x is dyadic, and f(x) = 0 otherwise.
This function is discontinuous everywhere. (Since the set of discontinuities is not of measure 0, f can;t be Riemann integrable on any closed interval.)
(i) f is discontinuous at any x = c, a dyadic number.
By density arguments, we have a sequence of dyadics {x(n)} as well as irrationals {y(n)} converging to c. On one hand, {f(x(n))} = {1} converges to 1, while {f(y(n))} converges to 0. Hence, the limit does not exist.
(ii) Similarly, f is discontinuous at any x = c, non-dyadic number.
I hope this helps!