计算概论(A)/基础编程练习2(8题)/8:1的个数
1 #include<stdio.h> 2 int main() { 3 int N,temp,count=0; 4 5 // 存储测试数据的二进制形式中1的个数 6 int bian[N]; 7 8 // 输入十进制整数N 表示N行测试数据 9 scanf("%d",&N); 10 11 // 循环读入 12 while(scanf("%d",&temp)!=EOF) { 13 bian[count]=0; 14 15 // 逐一计算二进制形式中1的个数 参考百度经验:http://jingyan.baidu.com/article/fc07f9892e245612ffe51909.html 16 while(temp!=0) { 17 if(temp%2!=0) { 18 // 不能整除2的记录1 19 bian[count]++; 20 } 21 // 除以2更新下一个被除数 当被除数变为0时 说明结束 22 temp=temp/2; 23 } 24 count++; 25 } 26 27 // 输出N行测试数据结果 28 for(int i=0; i<N; i++) { 29 printf("%d\n",bian[i]); 30 } 31 return 0; 32 } 33 /* 34 pkuic_2709.c 35 计算概论(A)/基础编程练习2(8题)/8:1的个数 36 http://pkuic.openjudge.cn/base2/8 37 8:1的个数 38 查看 提交 统计 提问 39 总时间限制: 1000ms 内存限制: 65536kB 40 描述 41 给定一个十进制整数N,求其对应2进制数中1的个数 42 输入 43 第一个整数表示有N组测试数据,其后N行是对应的测试数据,每行为一个整数。 44 输出 45 N行,每行输出对应一个输入。 46 样例输入 47 4 48 2 49 100 50 1000 51 66 52 样例输出 53 1 54 3 55 6 56 2 57 */
valuestack

浙公网安备 33010602011771号