Give a oneline C expression to test whether a number is a
power of 2?
Answers were Sorted based on User's Feedback
Answer / nmk
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
bool isPowerOf2(int number){
if ( number > 0 )
return (number & (number-1)) == 0;
if (number == 0)
return false;
if (isPowerOf2(-number)){
int count=0;
while ( !(number & 1)) {
++count;
number >>= 1;
}
if (fmod(count,2))
return true;
else
return false;
}
return false;
}
int main(void) {
for(int i=-1027; i<1025; ++i){
if (isPowerOf2(i) )
printf("%d\n", i);
}
return EXIT_SUCCESS;
}
Is This Answer Correct ? | 2 Yes | 14 No |
Answer / carl menezes
#define ISPOW2(x) ( (x + (x-1) ) == (x<<1 + 1) )
Is This Answer Correct ? | 10 Yes | 42 No |
Answer / sandhya
#include<stdio.h>
void main()
{
int number;
printf("|n enter a number");
scanf("%d",&number);
int twopower(int);
printf("\n the given number is ");
}
int twopower(int num)
{
while((num & -num)==num)
return(1);
printf("|n yes power of two");
}
Is This Answer Correct ? | 9 Yes | 45 No |
Answer / mridul
#include<stdio.h>
main()
{
int a;
scanf("%d",&a);
if (a&1)
printf ("POWER off 2");
printf ("NOT power of 2");
}
Is This Answer Correct ? | 3 Yes | 45 No |
main() { char name[10],s[12]; scanf(" \"%[^\"]\"",s); } How scanf will execute?
main() { int i, j, *p; i = 25; j = 100; p = &i; // Address of i is assigned to pointer p printf("%f", i/(*p) ); // i is divided by pointer p } a. Runtime error. b. 1.00000 c. Compile error d. 0.00000
#include<stdio.h> main() { FILE *ptr; char i; ptr=fopen("zzz.c","r"); while((i=fgetch(ptr))!=EOF) printf("%c",i); }
#define assert(cond) if(!(cond)) \ (fprintf(stderr, "assertion failed: %s, file %s, line %d \n",#cond,\ __FILE__,__LINE__), abort()) void main() { int i = 10; if(i==0) assert(i < 100); else printf("This statement becomes else for if in assert macro"); }
programming in c lanugaue programm will errror error with two header file one as stdio.h and other one is conio.h
write a origram swaoing valu without 3rd variable
Write a procedure to implement highlight as a blinking operation
main() { int i=5; printf("%d%d%d%d%d%d",i++,i--,++i,--i,i); }
main() { int i=5,j=6,z; printf("%d",i+++j); }
Is the following statement a declaration/definition. Find what does it mean? int (*x)[10];
void main() { char far *farther,*farthest; printf("%d..%d",sizeof(farther),sizeof(farthest)); }
prog. to produce 1 2 3 4 5 6 7 8 9 10