zoukankan      html  css  js  c++  java
  • 两个int类型的数据,不用任何的判断语句如if、switch、?:等,找出其中的大值

    //两个int类型的数据,不用任何的判断语句如if、switch、?:等,找出其中的大值
    #include <stdio.h>
    /*
    int
    max( int x,int y )
    {
            int buf[2] = { x, y };
            unsigned int z;
     
            z = x - y;
            z >>= 31;
     
            return buf[z];
    }
    */
    int
    max( int x,int y )
    {
            int buf[2]={x,y};
            unsigned int z;
            int c;
     
            z = x - y;
            c = x - y;
            z >>= 31;
            z= 0 ^ z;
     
            return buf[z];
    }
     
     
    int
    main( int argc, char *argv[] )
    {
            int buf[2];
     
            if( argc != 3 )
            {
                    printf( "USEG error" );
                    return -1;
            }
            buf[0] = atoi(argv[1]);
            buf[1] = atoi(argv[2]);
     
            printf( "The max num is %d\n", max( buf[0], buf[1] ) );
     
            return 0;
    }
  • 相关阅读:
    hdu 5116 计数
    hdu 5117 数学公式展开 + dp
    hdu 5115 Dire Wolf 区间dp
    I00025 寻找循环数
    外部设备发展趋势
    外部设备发展趋势
    互联网
    互联网
    I00024 出钱买羽
    I00024 出钱买羽
  • 原文地址:https://www.cnblogs.com/daniel/p/51670.html
Copyright © 2011-2022 走看看