由于不知道你说的因子是不是素因子,所以两种都写了下
#include
bool isPrime(int x)
{
if(x==2)return true;
for(int i=2;i*i<=x;i++)
if(x%i==0)return false;
return true;
}
int count(int x)//计算素因子个数
{
int cnt=2;
if(x==1)cnt--;
for(int i=2;i
cnt++;
return cnt;
}
int count2(int x)//计算因子个数
{
int cnt=2;
if(x==1)cnt--;
for(int i=2;i
cnt++;
return cnt;
}
int main( )
{
for(int i=1;i<=1000;i++)//输出1~1000中有奇数个不同素因子的整数。
{
int n=count(i);
if(n%2)
printf("%d ",i);
}
puts("");
for(int i=1;i<=1000;i++)//1~1000中有奇数个不同因子的整数。
if(count2(i)%2)
printf("%d ",i);
return 0;
}
#include
void main()
{
int a;
cin>>a;
int n=0;
for(int i=1;i if(a%i==0) n++;
cout<<"The a is "< cout<<"The num is "<
这个程序能实现1-100中奇数个因子的整数。
int count(int x)
{
int i;
int num;
for(i=1;i
if((x%i)==0) num++;
}
return num;
}