用C#求100以内所有质数的和,请哪位高手帮忙!谢谢!

解决方案 »

  1.   

            private bool IsPrime(int n)
            {
                if (n < 2) return false;
                else if (n == 2 || n == 3) return true;
                else
                {
                    if (n % 2 == 0) return false;
                    else
                    {
                        for (int i = 3; i <= (int)Math.Sqrt(n); i = i + 2)
                        {
                            if (n % i == 0) return false;
                        }
                    }
                }
                return true;
            }
            private void button1_Click(object sender, EventArgs e)
            {
                int sum = 0;
                for (int i = 1; i <= 100; i++)
                {
                    if (IsPrime(i))
                        sum += i;
                }
            }
      

  2.   


    int sum=0;
                for (int num = 0; num < 100; num++)
                {
                    //判断是否为质数
                    bool isprimenumber=true;
                    int iii = num / 2;
                    for (int ii = 2; ii <= iii; ii++)
                    {
                        if (num % ii == 0)
                        {
                            isprimenumber = false;
                            break;
                        }
                    }
                    sum += num;
                }
    得到4950
      

  3.   

    55555555555,太失误了,没有加判断int sum=0;
                for (int num = 0; num < 100; num++)
                {
                    //判断是否为质数
                    bool isprimenumber=true;
                    int iii = num / 2;
                    for (int ii = 2; ii <= iii; ii++)
                    {
                        if (num % ii == 0)
                        {
                            isprimenumber = false;
                            break;
                        }
                    }
                    if (isprimenumber)
                    {
                        sum += num;
                    }
                }应该的1061