码迷,mamicode.com
首页 > 其他好文 > 详细

取给定正整数的指定bit位开始的指定长度的数据

时间:2015-07-02 15:45:14      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:华为上机题

  • 接口说明

原型:

unsigned int GetBitsValue(unsigned int input, unsigned int startbit, unsigned int bitlen)

输入参数:

        input      输入的整数

         startbit   需要获取的开始bit

         bitlen     需要获取的bit长度

输出参数(指针指向的内存区域保证有效):

    

返回值:

        对应的bit取值

举例:

输入:4, 2, 2

返回:2

4对应的二进制为100(bit0和bit1为0,bit2为1),那么从bit2开始的2位为10,那么对应的十进制为2。


#include <stdlib.h>
#include <string.h>
#include "oj.h"


/*
功能:
    
输入:pIntArray:数组,nCout:数组长度
    
输出:
     
返回:返回最大值
     
*/

int GetSubArraySum(int* pIntArray, int nCount)
{
    /*在这里实现功能*/
      int ThisSum,MaxSum,j;
	  ThisSum = MaxSum =0;
	  for(j = 0;j < nCount;j++)
	  {
	    ThisSum += pIntArray[j];
	    
	    if(ThisSum > MaxSum)
	      MaxSum = ThisSum;
	    else if(ThisSum < 0)
	      ThisSum = 0; 
	  }
  	return MaxSum; 
}</span>

算法思路:

利用整数转换为2进制思路,先将数存入数组,然后读出指定位数.


版权声明:本文为博主原创文章,未经博主允许不得转载。

取给定正整数的指定bit位开始的指定长度的数据

标签:华为上机题

原文地址:http://blog.csdn.net/persever/article/details/46726779

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!