Let G(x) be the generator polynomial.
C(x) be the sent codeword, R(x) be the received code and E(x) be the error polynomial.
We can write: R(x) = C(x) + E(x) { This can be written by mod 2 addition and skipping the carry}
As we know that: "To detect error, G(x) should not divide R(x)".
=> G(x) should not divide E(x). As, $\frac{R(x)}{G(x)} = \frac{C(x)}{G(x)} + \frac{E(x)}{G(x)}$
Further, $\frac{R(x)}{G(x)} = 0 + \frac{E(x)}{G(x)}$
This means if E(x) is not divisible by G(x) then R(x) will not also be divisible by G(x).
Now, To detect odd number of bits in error, E(x) will contain odd number of terms.
Example: let sent codeword= 101010 and Received codeword = 100100 i.e three bits (1st, 2nd and 3rd bit) are in error.
Therefore, $E(x) = x^{3}+x^{2}+x$.
A) G(x) contain more than 2 terms.
let, $G(x) = x^{3}+x^{2}+x$ then $\frac{E(x)}{G(x)} = \frac{x^{3}+x^{2}+x}{x^{3}+x^{2}+x}$
So, E(x) is divisible by G(x). So, A is not the right option.
B) G(x) does not divide by $1+x^{k}$, for any k not exceeding frame length.
here, k=6 [ frame length or code length ]
let $G(x) = x$ & $E(x) = x^{3}+x^{2}+x$.
$\frac{E(x)}{G(x)} = \frac{x^{3}+x^{2}+x}{x}$. here, E(x) can be divisible by G(x). So, B is not the right option.
C) $(1+x)$ is a factor of G(x).
$\frac{E(x)}{G(x)} = \frac{x^{3}+x^{2}+x}{(1+x)G(x)} = \frac{odd no. of terms}{even no. of terms}$
here, E(x) wil never be divisible by G(x). So, (C) is correct option.
D) G(x) has odd number of terms
let $G(x) = x^{3}+x^{2}+x$.
$\frac{E(x)}{G(x)} = \frac{odd No of terms}{Odd number of terms}$
here, G(x) may divide E(x). So, this canot be the option.
Hence, Correct Ans: (C)