哪位高手能帮我做一道C语言程序设计的题,急啊!!!!!!

编写自定义函数count(intx),计算x的因子个数。利用此函数找出并输出1~1000中有奇数个不同因子的整数。好的话,还可以加分的,谢谢!!... 编写自定义函数count(int x),计算x的因子个数。利用此函数找出并输出1~1000中有奇数个不同因子的整数。
好的话,还可以加分的,谢谢!!
展开
 我来答
zkgogogo
推荐于2016-10-09 · TA获得超过458个赞
知道小有建树答主
回答量:181
采纳率:0%
帮助的人:0
展开全部
由于不知道你说的因子是不是素因子,所以两种都写了下

#include <stdio.h>

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<x;i++)
if(x%i==0&&isPrime(i))
cnt++;
return cnt;
}

int count2(int x)//计算因子个数
{
int cnt=2;
if(x==1)cnt--;
for(int i=2;i<x;i++)
if(x%i==0)
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;
}
阿辉日记
2010-12-23 · TA获得超过217个赞
知道答主
回答量:48
采纳率:0%
帮助的人:54.8万
展开全部
#include<iostream.h>
void main()
{
int a;
cin>>a;
int n=0;
for(int i=1;i<a;i++)
if(a%i==0) n++;
cout<<"The a is "<<a<<endl;
cout<<"The num is "<<n<<endl;
}
这个程序能实现1-100中奇数个因子的整数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xjx_0809
2010-12-23
知道答主
回答量:24
采纳率:0%
帮助的人:0
展开全部
int count(int x)
{
int i;
int num;
for(i=1;i<x;i++)
{
if((x%i)==0) num++;
}
return num;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式