/*
*Copyright (c) 2013 ,烟台大学计算机学院
*All rights reserved.
*作者:张凤宁
*完成日期:2013年12月15
*版本号:v1.0
*问题描述:判断两个有序数组中是否存在相同的数字
*样例输入:
*样例输出:
*问题分析:用简单的方法,学会活学活用
*/
#include <iostream>
using namespace std;
int fun(int x,int *q);
int main(void)
{
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 x,int *q)
{
int a=3,n=1;
*q++=1;
while(a<x)
{
if(x%a==0)
{
*q++=a;
n++;
}
a+=2;
}
return n;
}
运行结果:
心得体会:做着好纠结呀,一点思路都没有,所以最后是借鉴参考解答做的。呜呜。。。快抓狂了。但张凤宁你一定要加油奥!!