My proof of $A^{\mathrm{c}}$ is closed iff $A$ is open $\newcommand{\c}{\mathrm{c}}$
I have already attempted the proof but I feel like there are some holes in my argument. if someone could look at it and point it out even if minor I would appreciate it. (I know it can be proved through contradiction however I went another way.)

For $A\subseteq \mathbb{R},$ prove $A^{\mathrm{c}}$ is closed iff $A$ is open.

Suppose $A^\c$ is closed. Take $$x \in A$$ then $x \notin A^c$. Since a subset $S$ in $\mathbb R$ is closed if $\{a_n\}$ in $S$ converges to $a$, then limit $a$ belongs to $S$. (Can also say the limit points in $S$ are in $S$.) Now we know if $S$ is closed it contains all of its limit points, then $x$ is not a limit point of $A^\c$. Every neighborhood of $x$ such that there is some $$\delta\ > 0$$ such that $$N = { (x - \delta\,, x + \delta)}\subset A.$$ Since $N$ is the neighborhood of $x$ such that $A^c\cap N = \emptyset$, so $N\subset A$. Therefore $x$ is an interior point of $A$.
$x$ is arbitrary so true for any $x \in A$.  Therefore $A$ is open if $A^c$ is closed.
Now suppose $A$ is open (every point in $A$ is an interior point). Suppose $x$ is a limit point of $A^\c$. $x$ is not an interior point of $A$ because it is a limit point of $A^\c$ and every neighborhood of $x$ has a point in $A^\c$. No point in $A^\c$ can also be in $A$. Therefore $x \in A^\c$. Therefore every limit point of $A^\c$ is inside of $A^\c$. From the definition of a closed set $A^\c$ is closed if $A$ is open.

The idea is correct, however, it can be written in a better way. For example, you never write what $B$ is. Following is the reworded argument:

First, assume $A^c$ is closed. We want to show $A$ is open. To that end, let $x \in A.$ Hence $x \notin A^c.$ Closedness of $A^c$ implies that $x$ is not a limit point of $A^c.$ Therefore there exists $\delta>0$ such that $$(x-\delta,x+\delta) \cap A^c=\emptyset.$$ Hence $$x\in(x-\delta,x+\delta)\subseteq A.$$ This proves that $x$ is an interior point of $A.$ Since $x\in A$ was arbitrary, it follows that $A$ is open.
Conversely, let $A$ be open and we show $A^c$ is closed. Suppose $x$ is a limit point of $A^c.$ We want to prove that $x \in A^c$. Let if possible, $x \notin A^c.$ Then $x \in A$ (open), and so $x$ is an interior point of $A.$ Therefore there exists a neighborhood $N$ of $x$ such that $x \in N \subseteq A.$ In other words, $$N \cap A^c =\emptyset.$$ However as $x$ is a limit point of $A^c,$ we also must have that $$N\cap A^c\neq \emptyset.$$ We have thus arrived at a contradiction, which means $x \in A^c.$ Again since $x$ was an arbitrary limit point of $A^c,$ the claim follows.

Edit: The converse part can also be proved without using contradiction.
If $x$ is a limit point of $A^c,$ then for every neighborhood $N$ of $x,$ there exists $y_N \neq x,$ such that $y_N \in N \cap A^c.$ In other words, $y_N \in N$ and $y_N \notin A.$ This means $N \not\subseteq A.$ Since $N$ was an arbitrary neighbourhood of $x,$ this shows that $x$ cannot be an interior point of $A.$ The openness of $A$ thus gives $x \in A^c$. We have thus shown that $A^c$ contains all its limit points and so it is closed.
