/*
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 作 者:
* 完成日期:2013 年 12 月 14 日
* 版 本 号:v1.0
* 输入描述: 无
* 问题描述:求一个数的所有奇数因子,并按从小到大的顺序输出。返回值为这些奇数因子的个数。
*/
#include<iostream>
using namespace std;
int fun(int a,int *pp);
int main()
{
int a[50],x,n;
cin>>x;
n=fun(x,a);
cout<<x<<"的奇因子共有"<<n<<"个,分别是:";
for(int i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
return 0;
}
//下面定义fun函数
int fun(int a,int *pp)
{
int i,j=0;
for(i=1;i<=a;i++)
{
if((a%i==0)&&(i%2!=0))
{
*pp=i;
pp++;
j++;
}
}
return j;
}