69,381
社区成员
发帖
与我相关
我的任务
分享
#include "stdio.h"
#define N 5
int main()
{
int iArray[N];
int i = 0;
int nCount = 0;
for(i = 0;i < N && scanf("%d",&iArray[i]) == 1;i++);
for(i = 0;i < N;i++)
{
if(iArray[i] > 0)
{
while(iArray[i] % 2 == 0)
{
iArray[i] /= 2;
}
if(iArray[i] == 1)
{
nCount++;
}
}
}
printf("%d\n",nCount);
return 0;
}
#include "stdio.h"
#define N 5
int main()
{
int iArray[N];
int i = 0;
int nCount = 0;
for(i = 0;i < N && scanf("%d",&iArray[i]) == 1;i++);
for(i = 0;i < N;i++)
{
if(iArray[i] > 0)
{
//while(iArray[i] % 2 == 0)
//{
// iArray[i] /= 2;
//}
//if(iArray[i] == 1)
//{
// nCount++;
//}
if(((iArray[i] - 1) & iArray[i]) == 0)
nCount++;
}
}
printf("%d\n",nCount);
return 0;
}
[/quote]
此时运行速度提高了,但是还有些问题,不知道怎么修改了!
#include "stdio.h"
#define N 5
int main()
{
int iArray[N];
int i = 0;
int nCount = 0;
for(i = 0;i < N && scanf("%d",&iArray[i]) == 1;i++);
for(i = 0;i < N;i++)
{
if(iArray[i] > 0)
{
//while(iArray[i] % 2 == 0)
//{
// iArray[i] /= 2;
//}
//if(iArray[i] == 1)
//{
// nCount++;
//}
if(((iArray[i] - 1) & iArray[i]) == 0)
nCount++;
}
}
printf("%d\n",nCount);
return 0;
}