函数及参数类型1.2.4

计算阶乘(键盘敲入)

第一种调用函数fact

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

//函数定义不能掉
int fact(int)//函数名为fact inr main() { int i=5; cout<<fact(i+1)<<endl;//要习惯这种输出,直接调用函数,这是计算6的阶乘 return 0; } int fact(int n) { int i,f; f=1; for(i=1:i<=n;i++)f=f*i; return f;%注意有返回 }

第二种定义引用型变量带出结果//注意引用型变量的定义和用法

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

//函数定义不能掉
void fact1(int n,int & x);// 函数是空型,变量x前面加了&表面明x为引用型,而n为值型 int main() { int i=5,result; fact1(i+1,result);%由于函数是空型不能直接输出,要单独写出来,即不能写成cout<<fact1(i+1) cout<<result<<endl; return 0; } void fact1(int n,int & x) { int i; x=1; for(i=1;i<=n;i++)x=x*i; %注意此处没有返回值,因为使用的引用型相当于形参会将结果带回 }

最后可以将两个写在一起比对

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

int fact(int);//函数1

void fact1(int n,int & x);//变量x前面加了&表面明x为引用型,而n为值型 
    
    
int main()
{
    int i=5,result;
    cout<<fact(i+1)<<endl;
    fact1(i+1,result);
    cout<<result<<endl;
    return 0; 
 } 
 
 int fact(int n)
 {
     int i,f;
     f=1;
     for(i=1;i<=n;i++)f=f*i;
     return f; 
     
 }
 
 void fact1(int n,int & x)
 {
     int i;
     x=1;
     for(i=1;i<=n;i++)x=x*i;
      
 }

猜你喜欢

转载自www.cnblogs.com/lysun/p/12563213.html