Give a one-line C expression to test whether a number is a
power of 2.




Answers were Sorted based on User's Feedback



Give a one-line C expression to test whether a number is a power of 2...

Answer / lakshmi

void main()
{
int a;
scanf("%d",&a);

if((a&a-1)==0)
printf("Is a power of 2");
else
printf("Not a power of 2");
}

Is This Answer Correct ?    31 Yes 8 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / fallen angel

if(x&(x-1)==0)
then TRUE;
else
FALSE;

use the bitwise and operator

Is This Answer Correct ?    20 Yes 2 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / mayur shankariya

#include<stdio.h>
main()
{
int num;
printf("Enter Number
");
scanf("%d",&num);
(num & num - 1)? printf("Not
"):printf("Power of two
");
}

Is This Answer Correct ?    1 Yes 0 No




Give a one-line C expression to test whether a number is a power of 2...

Answer / rarach

if( (a == 2 ) || ((a/2) %2 == 0 ) && a !=1)
TRUE
else
false

Is This Answer Correct ?    1 Yes 1 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / rohit

if((log(n)/log(2))/floor(log(n)/log(2))==1)
then TRUE;
else FALSE;

Is This Answer Correct ?    1 Yes 5 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / ramesh b penchal

#include<stdio.h>
main()
{
int n,i,d,m;
printf("Enter a number");
scanf("%d",&n);
m=n;
while(n>0)
{
d=n%10;
if(d!=0)
{
prntf("%d is not power of 2",m);
getch();
exit();
}
n=n/10;
}
prntf("%d is power of 2",m);
getch();
}

Is This Answer Correct ?    0 Yes 4 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / santhoo035

#include<iostream.h>
int main()
{
int n,i;
cout<<"Enter a number";
cin>>n;
for(i=1;i<n/2;i++)
{
if((2<<i)==n)
{
cout<<"The given no is power of 2";
break;
}
}
}

Is This Answer Correct ?    3 Yes 8 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / akshay rastogi

#include<conio.h>
void main()
{
int n,i=0,num=0;
printf("\n enter any number");
scanf("%d",&n);
while(num<=n)
{
i++;
num=2^i;
}
if(num==n)
printf("yes no. is power of 2");
else
printf("no.");
}

Is This Answer Correct ?    0 Yes 6 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / abc def

/*following expr evaluates to true if num is a power of
2.Else it's false. '&' - bitwise and.*/
(num == 1) || !(num & 1)

Is This Answer Correct ?    0 Yes 9 No

Give a one-line C expression to test whether a number is a power of 2...

Answer / trailokya ranjan jena

#include<stdio.h>
void main()
{
int i,j;
clrscr();
printf("\n Enter a num");
scanf("%d",&i);
j=i;
for(;i%2==0;i/=2);
if(i==1)
printf("\n%d is power of 2",j);
else
printf("\n%d is not a power of 2");
getch();
}

Is This Answer Correct ?    4 Yes 18 No

Post New Answer



More C Code Interview Questions

#include<stdio.h> main() { char s[]={'a','b','c','\n','c','\0'}; char *p,*str,*str1; p=&s[3]; str=p; str1=s; printf("%d",++*p + ++*str1-32); }

2 Answers   CNSI,


#define f(g,g2) g##g2 main() { int var12=100; printf("%d",f(var,12)); }

3 Answers  


Which version do you prefer of the following two, 1) printf(ā€œ%sā€,str); // or the more curt one 2) printf(str);

1 Answers  


how to return a multiple value from a function?

2 Answers   Wipro,


#include<stdio.h> main() { struct xx { int x; struct yy { char s; struct xx *p; }; struct yy *q; }; }

2 Answers  






main(){ char a[100]; a[0]='a';a[1]]='b';a[2]='c';a[4]='d'; abc(a); } abc(char a[]){ a++; printf("%c",*a); a++; printf("%c",*a); }

2 Answers  


Is the following statement a declaration/definition. Find what does it mean? int (*x)[10];

1 Answers  


How to use power function under linux environment.eg : for(i=1;i<=n;i++){ pow(-1,i-1)} since it alerts undefined reference to 'pow'.

2 Answers  


print numbers till we want without using loops or condition statements like specifically(for,do while, while swiches, if etc)!

11 Answers   Wipro,


Write a prog to accept a given string in any order and flash error if any of the character is different. For example : If abc is the input then abc, bca, cba, cab bac are acceptable, but aac or bcd are unacceptable.

5 Answers   Amazon, Microsoft,


main() { int i = 3; for (;i++=0;) printf(ā€œ%dā€,i); }

1 Answers   CSC,


PROG. TO PRODUCE 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

1 Answers  






Categories