函数counter(int n,int w[])的功能是计算整数n的二进制表示形式中1的个数,同时用数组W记录该二进制数中1所在位置的权。 例如,十进制数22的二进制表示为10110,对于该二进制数,1的个数为3,在w[0]中存入2(即21),w[

admin2017-05-05  30

问题 函数counter(int n,int w[])的功能是计算整数n的二进制表示形式中1的个数,同时用数组W记录该二进制数中1所在位置的权。
    例如,十进制数22的二进制表示为10110,对于该二进制数,1的个数为3,在w[0]中存入2(即21),w[1]中存入4,在w[2]中存入16。
    【C函数】   
    int counter(int n,int w[])
    {int i=0,k=1;
  while(_____)
    {
    if(n%2)
    w[i++]=k;
    n=n/2;
   {
    _____;
    }
    return i;
    }

选项

答案n!=0 k=k*2

解析
转载请注明原文地址:https://jikaoti.com/ti/U6F9FFFM
0

相关试题推荐
最新回复(0)