预处理

来源:互联网 发布:微信照片制作软件 编辑:程序博客网 时间:2024/06/06 20:10
#include<stdio.h>
#include<windows.h>
#define MAX(x,y) ((x)>(y)?(x):(y))
int main()
{
  int a = 10;
  int b = 20;
  int max = 0;
  max = MAX(a,b);
  printf("max = %d\n",max);
  system("pause");
  return 0;
}


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<windows.h>


#define SWAP_ODD_EVEN( data ) \
( (((data)&0XAAAAAAAA) >> 1)  | \
 (((data)&0x55555555) << 1) \
)


int main( void )
{
int num = 100;
printf("%d\n", SWAP_ODD_EVEN(num));
system("pause");
    return 0;
}


#include <stdio.h>
#include <stdlib.h>
#include<windows.h>


int main( void )
{
int n, m;


printf("n, m:");
scanf("%d%d", &n, &m);


int xor = n ^ m;
int mask = 1;
int cnt = 0;
for ( ; xor; ) 
   {
xor = xor & (xor-1);
cnt++;
}


printf("cnt=%d\n", cnt);
system("pause");
    return 0;

}

#include <stdio.h>
#include <stdlib.h>


int find_data(int arr[][4], int row, int col, int data)
{
int i = 0;
int j = col - 1;

while ( 1 ) 
{
if ( data == arr[i][j] ) 
return 1;
else if ( data < arr[i][j] && j>0) {
j--;
} else if ( data >arr[i][j] && i<row-1) {
i++;
} else {
return 0;
}
}
}


int main( void )
{
int arr[4][4] = {
{1, 2,  3,  4},
{5, 6,  7,  8},
{9, 10, 11, 12},
{13,14, 15, 16}
};


int data;
scanf("%d", &data);


if ( find_data(arr, 4, 4, data) == 1 )
{
printf("found\n");
} else {
printf("not found\n");
}
}

原创粉丝点击