Set or Clear a Specific Bit in a Register

Code

#include <stdio.h>
int main(){
    unsigned char a;
    int m,n;
    scanf("%hhu",&a);
    scanf("%d",&m);
    scanf("%d",&n);
    if(n==1){
        a |=(1<<m);
    }
    else if(n==0){
        a &=  ~(1 << m);

    }
    printf("%d",a);
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

10 3 1

Expected Output

10