Seems like you have a misunderstanding of how shifts work.
Shifting does not add zero's left or right. You can't just add digits, there are only so many bits. Lets take your number, the decimal number 11.
int n = 11; which is 1011
This is true, but only half the story. See, numbers have a fixed size in your CPU. For integers, thats 32 bits, but to make it easier, lets assume 8 bit numbers. Your 11 looks like this:
+-+-+-+-+-+-+-+-+
|0|0|0|0|1|0|1|1|
+-+-+-+-+-+-+-+-+
It has 8 bits. Always. Now lets do a left-shift by 1:
+-+-+-+-+-+-+-+-+
0|0|0|0|1|0|1|1| |
+-+-+-+-+-+-+-+-+
After you shifted, the first bit got "shifted out". There is no space to store that bit. Also, the last bit is "empty", we can't store "emptyness". There is only one or zero. Instead, we "shift in" zero's. So you end up with
+-+-+-+-+-+-+-+-+
|0|0|0|1|0|1|1|0|
+-+-+-+-+-+-+-+-+
On a right-shift its the other way around. We start with 11 again:
+-+-+-+-+-+-+-+-+
|0|0|0|0|1|0|1|1|
+-+-+-+-+-+-+-+-+
and shift right by 1:
+-+-+-+-+-+-+-+-+
| |0|0|0|0|1|0|1|1
+-+-+-+-+-+-+-+-+
Again, every bit got shifted right by 1. On the left there is an empty bit which, as previously, just becomes zero. On the right, the one got shifted out and there is no space to store it. It is just lost. Our final number is:
+-+-+-+-+-+-+-+-+
|0|0|0|0|0|1|0|1|
+-+-+-+-+-+-+-+-+
Above is true for unsigned numbers, also called a logical right-shift. On a two's complement system, for signed numbers, it uses the so-called arithmetic right-shift, which instead of shifting in zero-bits, it shifts in sign-bits. I.e. if the number is negative, hence the most significant bit is one, it shifts in one's, otherwise it shifts in zero's.