多语言展示
当前在线:693今日阅读:84今日分享:32

该如何得到N的阶乘之C#for循环实现

n的阶乘就是1*2*3...*(n-1)*n,那么在计算机中该如何实现这个问题呢?今天我就用C#语言来计算N的阶乘,完成功能为首先输入一个整数n,显示1~n的阶乘结果,程序执行结果具体如下:
工具/原料

visual studio2010程序设计软件

方法/步骤
1

打开程序设计软件visual studio2010,在菜单栏中选择“文件”->“新建”->“项目”,来新建一个项目。

2

这里我选择编程语言Visual c#,在Windows下的控制台应用程序。设置项目名为阶乘计算。

3

在Program类中定义一个函数,函数头private static  double forjiecheng(int n),在这里我给各位来分析分析这个定义的意义所在:这里定义为static是因为要在static的main函数中调用(静态函数只能调用静态的函数)定义double类型的返回值,因为阶乘的结果数据非常庞大,不定义成double很容易让数据溢出。

4

那么现在就来分析阶乘具体实现过程吧:首先定义一个double类型的result,result=1;这里是将计算的结果放在此处。在for循环中,计数器i从1到n计算,在循环体的代码result=result*i;i=1 result=1*1;i=2 result=1*1*2;i=3 result=1*1*2*3;.................i=n result=1*1*2*3*...*(n-1)*n;是不是完美的符合n的阶乘计算定义呢,下面具体代码如下。

5

在Main函数中功能详解:我首先让她输入一个正整数,用来计算输入的这个正整数的阶乘。调用forjiecheng这个方法得到阶乘,输出显示。具体代码如下:

6

现在我们就可以编译运行刚写好的程序了,如果要计算10的阶乘那么我们该怎么做呢?首先输入数10,回车就程序就会自动计算,得到的结果如下图:

7

如果我们想要看看计算过程要怎么做呢?其实要实现也很简单,只要在循环体中加一个输出就ok了,具体代码如下图中的红框框中的部分。

8

现在再来编译运行下,输入整数10。现在是不是每一步计算的结果都显示了呢。

注意事项

阶乘计算结果数据会很庞大,主要不要让数据溢出

推荐信息