C# 我在SharpDevelop上的这个非常简单的程序中犯了什么错误?

C# 我在SharpDevelop上的这个非常简单的程序中犯了什么错误?,c#,c#-4.0,sharpdevelop,C#,C# 4.0,Sharpdevelop,我只是一个初学者,我在SharpDevelop(C#)上编写了一个非常简单的程序,但它不起作用 这是: public static void Main(string[] args) { float pi; int n; pi=1; for(n=1; n<1000; n++) { pi=pi+((-1)^n)/(2*n+1); Console.WriteLine(""+pi); } Console.

我只是一个初学者,我在SharpDevelop(C#)上编写了一个非常简单的程序,但它不起作用

这是:

public static void Main(string[] args)
{
    float pi;
    int n;
    pi=1;

    for(n=1; n<1000; n++)
    {
        pi=pi+((-1)^n)/(2*n+1);

        Console.WriteLine(""+pi);
    }

    Console.ReadKey(true);
}
publicstaticvoidmain(字符串[]args)
{
浮点数;
int n;
pi=1;

对于(n=1;n这是因为您使用的是整数算术,所以每次表达式
(-1)^n)/(2*n+1)
都四舍五入到
0

尝试用以下行替换您的
pi
计算:

pi += (float)Math.Pow(-1f, n) / (2*n+1);

顺便说一下,
^
运算符不是求幂运算。

这是因为您使用的是整数算术,所以每次表达式
(-1)^n)/(2*n+1)
都四舍五入为
0

尝试用以下行替换您的
pi
计算:

pi += (float)Math.Pow(-1f, n) / (2*n+1);
顺便说一下,
^
运算符不是求幂运算