Denote by $\mathbb{Q}^+$ the set of positive rational numbers. A function $f : \mathbb{Q}^+ \to \mathbb{Q}$ satisfies

• $f(p) = 1$ for all primes $p$, and

• $f(ab) = af(b) + bf(a)$ for all $ a,b \in \mathbb{Q}^+ $.

For which positive integers $n$ does the equation $nf(c) = c$ have at least one solution $c$ in $\mathbb{Q}^+$?
1. **Given Conditions:**
   - \( f : \mathbb{Q}^+ \to \mathbb{Q} \) satisfies:
     - \( f(p) = 1 \) for all primes \( p \).
     - \( f(ab) = af(b) + bf(a) \) for all \( a, b \in \mathbb{Q}^+ \).

2. **Objective:**
   - Determine for which positive integers \( n \) the equation \( nf(c) = c \) has at least one solution \( c \in \mathbb{Q}^+ \).

3. **Analyzing the Functional Equation:**
   - Let \( c \) be a positive rational number. We can write \( c \) in its prime factorization form:
     \[
     c = \prod_{i=1}^k p_i^{n_i}
     \]
     where \( p_i \) are distinct primes and \( n_i \in \mathbb{Z} \).

4. **Applying the Functional Equation:**
   - We need to find \( f(c) \). Using the given properties of \( f \):
     \[
     f(c) = f\left(\prod_{i=1}^k p_i^{n_i}\right)
     \]
     Using the multiplicative property of \( f \):
     \[
     f\left(\prod_{i=1}^k p_i^{n_i}\right) = \sum_{i=1}^k \left( \prod_{j \neq i} p_j^{n_j} \right) f(p_i^{n_i})
     \]
     Since \( f(p) = 1 \) for all primes \( p \), we have:
     \[
     f(p_i^{n_i}) = n_i f(p_i) = n_i
     \]
     Therefore:
     \[
     f\left(\prod_{i=1}^k p_i^{n_i}\right) = \sum_{i=1}^k \left( \prod_{j \neq i} p_j^{n_j} \right) n_i
     \]

5. **Simplifying the Equation \( nf(c) = c \):**
   - We need to solve:
     \[
     nf(c) = c
     \]
     Substituting \( f(c) \):
     \[
     n \sum_{i=1}^k \left( \prod_{j \neq i} p_j^{n_j} \right) n_i = \prod_{i=1}^k p_i^{n_i}
     \]
     Dividing both sides by \( \prod_{i=1}^k p_i^{n_i} \):
     \[
     n \sum_{i=1}^k \frac{n_i}{p_i^{n_i}} = 1
     \]

6. **Finding \( n \):**
   - The equation \( \frac{1}{n} = \sum_{i=1}^k \frac{n_i}{p_i} \) must hold.
   - This implies that \( n \) must be such that the sum of the reciprocals of primes, weighted by integers \( n_i \), equals \( \frac{1}{n} \).

7. **Conclusion:**
   - The equation \( \frac{1}{n} = \sum_{i=1}^k \frac{n_i}{p_i} \) has solutions if and only if \( n \) is square-free. This is because the sum of reciprocals of primes can only be rational if the denominators are distinct primes, which corresponds to \( n \) being square-free.

The final answer is \( \boxed{ n } \) is square-free.