第十六周OJ题目(4)——指针引出奇数因子

来源:互联网 发布:淘宝详情页图片像素 编辑:程序博客网 时间:2024/04/30 00:17

问题及代码:

/** Copyright (c) 2014, 烟台大学计算机学院* All rights reserved.* 文件名称:Project4.cpp* 作    者:陈旭* 完成日期:2014年12月11日* 版 本 号:v1.0** 问题描述:编写函数 int fun(int x, int *pp)。其功能是,求出x的所有奇数因子,并按照从小到大的顺序放在pp指向的内存中,函数返回值为这些整数的个数。若x的值为30,数组中的数为1,3,5,15,函数返回4。* 输入描述:略* 程序输出:略*/#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 j,n=0;    for(j=1; j<=x; j=j+2)        if(x%j==0)        {            n++;            *(pp+n-1)=j;        }    return n;}


 

运行结果:

 

知识点总结:

    通过这个程序的编写,让我们更加把指针数组等进行运用。

学习心得:

    一开始想了好多,又是奇数又是偶数的,后来发现只要考虑j=j+2再进行验证就行了,看了还是的拓展自己的思维啊。

0 0
原创粉丝点击