第1个回答 2011-08-06
// 2_muchong.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"//VS2010的专属头文件,其他软件可以去掉
#include<string.h> //头文件
#include <stdlib.h>
int f(int n)
{
char a[1000];
itoa(n,a,2);//转化为二进制的字符串(change into binary char)
int i,sum=0;
for(i=0;i<strlen(a);i++)
if(a[i]==49)//字符“1”的ASII号码为 49
sum++;
return sum;
}
void main()
{
int n;
printf("Please input a decimal number:\n");//输入一个十进制数
scanf("%d",&n);
printf("This decimal number has %d \"1\" when it was changed into binary number.\n",f(n));//输出结果
system("pause");//暂停,方便查看结果
}
第2个回答 2011-08-06
int f(int n)
{char a[1000];
itoa(n,a,2);
int i,sum=0;
for(i=0;i<strlen(a);i++)
if(a[i]==49)
sum++;
return sum;}
main()
{int n;
scanf("%d",&n);
printf("%d",f(n));
}本回答被提问者采纳
第3个回答 2011-08-06
int f( int x)
{ int count=0;
while(x)
{ x&=x-1;
cout++;}
return count;}
第4个回答 2011-08-06
maihx 已经说的很明白了!都行!
第5个回答 2011-08-06
// 2_muchong.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"//VS2010的专属头文件,其他软件可以去掉
#include<string.h> //头文件
#include <stdlib.h>
int f(int n)
{
char a[1000];
itoa(n,a,2);//转化为二进制的字符串(change into binary char)
int i,sum=0;
for(i=0;i<strlen(a);i++)
if(a[i]==49)//字符“1”的ASII号码为 49
sum++;
return sum;
}
void main()
{
int n;
printf("Please input a decimal number:\n");//输入一个十进制数
scanf("%d",&n);
printf("This decimal number has %d \"1\" when it was changed into binary number.\n",f(n));//输出结果
system("pause");//暂停,方便查看结果
}
第6个回答 2011-08-06
int f(int n)
{char a[1000];
itoa(n,a,2);
int i,sum=0;
for(i=0;i<strlen(a);i++)
if(a[i]==49)
sum++;
return sum;}
main()
{int n;
scanf("%d",&n);
printf("%d",f(n));
}本回答被提问者采纳
第7个回答 2011-08-06
int f( int x)
{ int count=0;
while(x)
{ x&=x-1;
cout++;}
return count;}
第8个回答 2011-08-06
maihx 已经说的很明白了!都行!