Related Articles
Toggle all the bits of a number except k-th bit.
• Difficulty Level : Medium
• Last Updated : 07 May, 2021

Given a positive (or unsigned) integer n, write a function to toggle all the bits except k-th bit. Here value of k starts from 0 (zero) and from right.

Examples:

```Input : n = 4294967295, k = 0
Output : 1
The number 4294967295 in 32 bits has all bits
set.  When we toggle all bits except last bit,
we get 1.

Input  :  n = 1, k = 1
Output : 4294967292
4294967262 has all bits toggled except second
bit from right.```
1. Toggle bit at k-th position. We do it by finding a number with only k-th bit set (using 1 << k), then doing bitwise XOR of this number n.
2. Toggle all bits of number obtained above using ~ (Bitwise negation)

## C++

 `// C++ program to toggle all bits except kth bit``#include ``using` `namespace` `std;` `// Returns a number with all bit toggled in n``// except k-th bit``unsigned ``int` `toggleAllExceptK(unsigned ``int` `n,``                              ``unsigned ``int` `k)``{``    ` `    ``/* 1) Toggle k-th bit by doing n ^ (1 << k)``       ``2) Toggle all bits of the modified number */``    ``return` `~(n ^ (1 << k));``}` `// Driver code``int` `main()``{``    ``unsigned ``int` `n = 4294967295;``    ``unsigned ``int` `k = 0;``    ` `    ``cout << toggleAllExceptK(n, k);``    ` `    ``return` `0;``}` `// This code is contributed by khushboogoyal499`

## C

 `// C program to toggle all bits except kth bit``#include` `// Returns a number with all bit toggled in n``// except k-th bit``unsigned ``int` `toggleAllExceptK(unsigned ``int` `n,``                            ``unsigned ``int` `k)``{``   ``/* 1) Toggle k-th bit by doing n ^ (1 << k)``      ``2) Toggle all bits of the modified number */``    ``return` `~(n ^ (1 << k));``}` `// Driver code``int` `main()``{``    ``unsigned ``int` `n = 4294967295;``    ``unsigned ``int` `k = 0;``    ``printf``(``"%u"``, toggleAllExceptK( n, k));``    ``return` `0;``}`

## Python3

 `# Python3 program to toggle all bits``# except kth bit` `# Returns a number with all bit toggled``# in n except k-th bit``def` `toggleAllExceptK(n, k):``    ` `    ``# 1) Toggle k-th bit by doing n ^ (1 << k)``    ``# 2) Toggle all bits of the modified number``    ``temp ``=` `bin``(n ^ (``1` `<< k))[``2``:]` `    ``ans ``=` `""` `    ``for` `i ``in` `temp:``        ``if` `i ``=``=` `'1'``:``            ``ans ``+``=` `'0'``        ``else``:``            ``ans ``+``=` `'1'` `    ``return` `int``(ans, ``2``)` `# Driver code``if` `__name__ ``=``=` `'__main__'``:``    ` `    ``n ``=` `4294967295``    ``k ``=` `0``    ` `    ``print``(toggleAllExceptK(n, k))` `# This code is contributed by mohit kumar 29`

## Javascript

 ``

Output:

`1`

My Personal Notes arrow_drop_up