A. $n_0(s)$ is a $3$ digit prime. It means no. of $0's$ are in the range (set) $\{101,103,\ldots,997\}$ which is finite. So, $L$ will be regular.
For simplicity consider $n_0(s)$ is a $1$ digit prime. So set will be $\{2.3.5.7\}.$ DFA will look like
B. Prefix - For a string $s,$ its prefix $s'$ is any substring from the beginning of $s.$
Example: $s = 10110, s' = \{1, 10, 101, 1011, 10110\}.$
$L=\left\{ s \in (0+1)^* \mid \text{ for every prefix s' of s,} \mid n_{0}(s')-n_{1}(s') \mid \leq 2 \right \}$
So, here we have to ensure that no where in our string the difference between number of $0's$ and $1's$ is greater than $2.$ If anywhere the above condition fails, we will enter a dead state as we got a substring (prefix) that violates the condition.
DFA will be like
So, here the difference between number of $0's$ and $1's$ crosses $2$ we will be in dead state.
e.g., $s=10110, s' = \{1, 10,101,1011,10110\}$
This string will be accepted as nowhere in $s'$ the difference exceeds $2$.
$s=011110, s'=\{0,01,011,0111,\underbrace{01111}_{\text{diff} = 3},011110\}$
This string is not accepted.
C. The difference between the number of $0's$ and $1's$ should not exceed $4.$
Here, once we exceed the limit there is a possibility that we might cover up the difference in further part of the string.
e.g., $0111111000$
Here, just by seeing up to the last $1$ we cannot move to dead state. So, it needs infinite counting. Hence, not regular.
D. This language can be stated as the set of strings where number of $0's$ is divisible by $7$ and number of $1's$ is divisible by $5.$ We can make a DFA for this by cross-product method. Hence, regular.