Find the constant c > 0? Find a constant c > 0 such that for every finite set of integers B not containing 0, there is a subset A of B such that A is sum-free and |A| ≥ c|B|, where |A| means the number of elements of A.
 A: This problem can be found in Theorem 1.3 of Terence Tao and Van Vu's book "additve combinatorics". I write it down below since maybe you do not have a copy of it.
We can choose $c=\frac{1}{3}$ by using a probabilistic method. First, we choose a prime number $p=3k+2$, where $k$ is large enough so that $B\subset [-\frac{p}{3},\frac{p}{3}]\backslash\{0\}$. We can view $B$ as subset of $\mathbb{Z}_p$ and note that a subset $A$ of $B$ is sum-free when we view it as a subset of $\mathbb{Z}_p$ if and only if it is sum free in integers.
We choose a random number $x\in\mathbb{Z}_p\backslash\{0\}$ uniformly, which means that any x appears with equal probability. Then we consider the set $$A=B\cap(x\cdot[k+1,2k+1])=\{a\in A:x^{-1}a\in\{k+1,k+2,\ldots,2k+1\}\}. $$ Since $[k+1,2k+1]$ is sum-free in $\mathbb{Z}_p$, $A$ is also sum-free in $\mathbb{Z}_p$. We have that $$E(|A|)=\sum_{a\in B}P(a\in A)=\sum_{a\in B} P(x^{-1}a\in[k+1,2k+1]).$$ If $a\in B$, then $a$ is a invertible element in $\mathbb{Z}_p$ (since $p$ is a prime), and thus $x^{-1}a$ is uniformly distributed in $\mathbb{Z}_p\backslash\{0\}$. Since $|[k+1,2k+1]|=k+1>p/3$, so for all $a\in B$ we have $ P(x^{-1}a\in[k+1,2k+1])>1/3$. Thus $E(|A|)>\frac{|B|}{3}$ which implies that $|A|\geq \frac{|B|}{3}$ with positive probablity and so we can find $x$ to make that $A$ is sum-free and $|A|\geq \frac{|B|}
{3}$.
In fact the number $1/3$ is optimal in some sense as showed in a paper of Sean Eberhard, Ben Green and Freddie Manners named "Sets of integers with no large sum-free subset", which says


There is a set of n positive integers with no sum-free subset of size
    greater than $\frac{1}{3}n + o(n)$.


