Если вы знаете количество бит в B, то вам нужно построить шаблон с таким количеством битов, равным 1. Предположим, что int имеет 32 бита в вашей системе:
unsigned int mask = 0xFFFFFFFF >> (32 - numberOfBitsInB);
if (N & mask == B)
printf("%d ends with %d\n", N, B);
else
printf("Nope");
Вы также можете вычислить числобитов в B через:
int tmpB = B;
int numberOfBitsInB = 0;
while (tmpB)
{
numberOfBitsInB++;
tmpB >>= 1;
}