我的程序:
01./*
02.* 程序的版权和版本声明部分:
03.* Copyright (c) 2013, 烟台大学计算机学院
04.* All rights reserved.
05.* 文件名称:test.cpp
06.* 作 者:王鲁峰
07.* 完成日期:2013 年11 月 24日
08.* 版 本 号:v1.0
09.* 对任务及求解方法的描述部分:
10.* 输入描述:无
11.* 问题描述:求n的奇数的阶乘
12.* 程序输入:略
13.* 程序输出:略
14.* 算法设计:略
15.*/
#include<iostream>
using namespace std;
long fac(int);
int main()
{
int n;
long y;//n表示需要求阶乘的数 y表示n的阶乘
cout<<"请输入一奇数求该数的阶乘:"<<endl;
cin>>n;
y=fac(n);//n表示奇数
cout<<n<<"!="<<y;
return 0;
}
long fac(int n)
{
long s;
if(n<0)
{
cout<<"输入有误"<<endl;
}
else if(n==0||n==1)
{
s=1;
}
else
{
s=fac(n-2)*n;
}
return s;//最后将值赋给s 让后在在main函数中赋给y
}
运算结果:
心得体会:
在求n的阶乘的基础上,稍加修改就ok了。