第十六周项目3-指针引出奇数因子

编写函数 int fun(int x, int *pp)。其功能是,求出x的所有奇数因子,并按照从小到大的顺序放在pp指向的内存中,函数返回值为这些整数的个数。若x的值为30,数组中的数为1,3,5,15,函数返回4。

/*
* Copyright (c) 2014,烟台大学计算机学院
* All right reserved.
* 作者:邵帅
* 文件:demo.cpp
* 完成时间:2014年12月10日
* 版本号:v1.0
*/
#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 i,m=0;
     for (i=1;i<x;i+=2)
     {
         if (x%i==0)
         {
             pp[m]=i;m++;
         }
     }
     return m;
 }

运行结果:



再来看一下求奇数因子。

 int fun(int x,int *pp)
 {
     int i,m=0;
     for (i=1;i<x;i+=2)
     {
         if (x%i==0)
         {
             pp[m]=i;m++;
         }
     }
     return m;
 }

@ Mayuko

posted @ 2014-12-10 17:07  麻麻麻麻鱼鱼  阅读(177)  评论(0编辑  收藏  举报