第十六周实验报告2

来源:互联网 发布:迈腾轮毂尺寸数据 编辑:程序博客网 时间:2024/06/05 08:21
 

实验目的:学会利用指针解决问题
实验内容:求出一个数所有的奇数因子

* 程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:         指针法求奇数因子                    
* 作    者:       徐嘉健                      
* 完成日期:      2011    年     12  月   14
* 版本号:         number one 

* 对任务及求解方法的描述部分
* 输入描述:一个整数x
* 问题描述:输出x的所有奇数因子
* 程序输出:x的所有奇数因子及其个数
* 程序头部的注释结束

 

#include <iostream>

using namespace std;

int fun(int x,int *pp);   //作用是求出x的所有奇数因子,并按照从小到大的顺序放在pp指向的内存中

int main(void)
{
    int a[50], x, n;
    cin >> x;
    n = fun(x, a);
    cout << x << "的奇因子共有" << n << "个,分别是:";
    for(int i = 0; i < n; i++, *a = *(a+i))
    {
        cout << *a << "  ";
    }
 
    cout << endl;

    return 0;
}

int fun(int x, int *pp)
{
    for(int i = 1, n = 0; i <= x; i++)
    {
        if(x % i == 0)
        {
            *pp = i;
            n++;
            pp++;
        }
        else
           continue;
    }

    return n;
}


 

 运行结果:
第十六周实验报告2

经验积累:
1.需要注意,pp和a代表的是地址。
2.数组和指针的关系必须明确。
3.被调函数中运用指针,指针定义必须清晰,思路一定要调理。

上机感言:
上个程序要求运用指针实现冒泡法排序,这个程序要求以指针为基础,做到求数的所有奇数因子,算是对指针深一步的了解和运用,可是感觉运用的还是不太熟练,虽然程序是做出来了,但有种稀里糊涂的感觉,
始终觉得不满意,唉~课下还要下功夫,因为不喜欢这种不清晰的感觉。

原创粉丝点击