c#1到10的阶乘

用基础的语言,越基础越好,本人是新手,刚开始学习!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 阶乘
{
class Program
{
static void Main(string[] args)
{
int sum=1;
for (int i = 1; i <= 10; i++)
sum *= i;
Console.WriteLine(sum);
}
}
}
如果仅仅是要简单的话,就是上面那个了吧..用递归要专业点..
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-10-31
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication5 //命名空间你要改成你自己的
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("下面输出1到10的阶乘:");
for (int i = 1; i <= 10; i++)
{
Console.WriteLine(i+"!="+JC(i));
}
Console.ReadLine();
}

static int JC(int n)
{
if (n > 1)
{
return n*JC(n - 1);
}
return 1;
}
}
}
//应该来说1楼的是最简洁的(不过好像写错了点地方,3楼才是完整的),而我的是最专业的.
//从我写的算法里你可以学到阶乘的写法, 即使你在其它地方都可以用到这个方法, 从这一点上看对你的帮助更大!
第2个回答  2009-10-31
class Program
{
public void Execute()
{
foreach (var item in new NumEnumerator(10))
{
Console.WriteLine(item);
}
}
class NumEnumerator : IEnumerable<int>
{

public NumEnumerator(int count)
{
Count = count;
}

public int Count { get; private set; }

#region IEnumerable<int> 成员

int num = 1;

public IEnumerator<int> GetEnumerator()
{
for (int i = 1; i <= Count; i++)
{
num = num * i;
yield return num;
}
}

#endregion

#region IEnumerable 成员

System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
throw new NotImplementedException();
}

#endregion
}

static void Main(string[] args)
{
Program pro = new Program();
pro.Execute();

Console.ReadLine();
}
}

这才叫专业,吃饱了撑的。
第3个回答  2009-10-31
int jc=1;
for(int i=1;i<=10;i++){
jc*=i;
Console.WriteLine("{0}的阶乘为{1}",i,jc);
}
结果:
1的阶乘为1
2的阶乘为2
3的阶乘为6
4的阶乘为24
5的阶乘为120
6的阶乘为720
7的阶乘为5040
8的阶乘为40320
9的阶乘为362880
10的阶乘为3628800
Press any key to continue...
第4个回答  2009-10-31
1楼的 好精辟 我想复杂了
相似回答