第16周OJ-指针(4)

来源:互联网 发布:multisim 网络标号 编辑:程序博客网 时间:2024/06/05 12:08
题目描述
编写函数 int fun(int x, int *pp)。其功能是,求出x的所有奇数因子,并按照从小到大的顺序放在pp指向的内存中,函数返回值为这些整数的个数。若x的值为30,数组中的数为1,3,5,15,函数返回4。
用下面的main()函数进行测试:
int main()
{
    int a[50],x,n;
    cin>>x;
    n=fun(x,a);
    cout<<n<<endl;
    for(int i=0; i<n; i++)
        cout<<a[i]<<" ";
    cout<<endl;
    return 0;
}


输入
一个整数


输出
输入的整数的奇因子个数,以及这些奇因子


样例输入
30
样例输出
4

1 3 5 15



#include<iostream>using namespace std;int fun(int x, int *pp);int main(){    int a[50],x,n;    cin>>x;    n=fun(x,a);    cout<<n<<endl;    for(int i=0; i<n; i++)        cout<<a[i]<<" ";    cout<<endl;    return 0;}int fun(int x, int *pp){    int n=0,i;    for(i=1;i<=x;i++)        if((x%i==0)&&(i%2!=0))    {        *pp++=i;         n++;    }    return n;}


0 0
原创粉丝点击