关于指针和引用的C的题目

来源:百度知道 编辑:UC知道 时间:2024/05/22 09:03:43
编写一个函数,传入一个整数n,返回n的阶乘和n的5次方,分别使用指针和引用实现,写出主函数测试。
我是这么写的,可是调试后总是出错,改了很多次还是不行,请高手指导下,谢谢~
#include <iostream>
using namespace std;
int aa(int *a,int &b)
{int n,s=1,j;
for(int i=1;i<=n;i++)
{s=s*i;
a=&s;
cout<<*a;
}
cout<<endl;
j=n*n*n*n*n;
b=j;
cout<<b<<endl;
return 0;
}
int main()
{int n,*a,b;
cin>>n;
cout<<aa(*a,&b)<<endl;
system("pause");
}

要改的地方有点多 重写了一下 对照着看吧

送给yefeng1494:还在用6.0的朋友,你太牛了。几句话就将你的无知展露无疑

#include <iostream>
#include<cmath>
using namespace std;

void fun(int *,int &);

int main()
{
int n,*a=0;

cin>>n;

a=&n;

fun(a,n);

return 0;
}

void fun(int *a,int &b)
{
cout<<"n的5次幂:"<<endl;
cout<<pow((float)(*a),5)<<' '<<pow((float)b,5)<<endl;

cout<<"n的阶乘:"<<endl;

int result=1;

for(int i=*a;i>0;i--)
result*=i;

cout<<result<<' ';

result=1;

for(int i=b;i>0;i--)
result*=i;
cout<<result<<endl;
}

#include <iostream>
using namespace std;
int aa(int *a,int &b)
{int n;
*a = 0;
for(int i=1;i<=n;i++)
{