错误CS1002 :; 预期&(31,13):错误CS1525:无效的表达式术语'else'

mag*_*000 2 c#

布局有问题,我知道我很接近.///我有两个错误(31,18): error CS1002: ; expected & (31,13): error CS1525: Invalid expression term 'else'///我已经尝试过做了所谓的事情并且犯了更多错误,所以我完全不知道如何让这个工作现在.

目前我有这个

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

namespace CE0721a
{
    class Tut4_7
    {
        public void run()
          {
            double under16_Free = 2.5;
            double oap = 3.0;
            double other = 5.0;
            int groupSize = 0;
            double totalCost = 0;
            int age = 0;

        while (age!=-1)
        {
            Console.WriteLine("Enter an Age or -1 to quit");
            age=int.Parse(Console.ReadLine());

            if(age<16)&(age>-1);
            {
                groupSize++;
                totalCost = totalCost + under16_Free;
            }
            else if(age>16)
            {
                groupSize++;
                totalCost = totalCost + oap;
            }
            else if(age>16)&(age<=65);
            {
                groupSize++;
                totalCost = totalCost + other;
            }
        }
        if (groupSize>6)
        {
            totalCost = totalCost - (totalCost/5);
        }
        Console.WriteLine("Total Cost = "(totalCost));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想这样做

**为当地游泳池写一个节目,根据他们的年龄显示一群人的入场费.程序应继续提示用户输入年龄,直到输入-1,然后显示该组中的总人数以及该组的总成本.入场费如下: - 65岁以下的16英镑+2.50英镑和所有其他游泳运动员 - 5英镑

超过6人的团体应享受20%的折扣.**

这是连接到另一个名为Program.cs的cs,这样的布局和工作,因为我已经测试了其他cs文件,这显示程序

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

namespace CE0721a
{
    class Program
    {
        static void Main(string[] args)
        {
            Tut4_7 myProgram = new Tut4_7();
            myProgram.run();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

再次感谢,如果有人可以提供帮助

jru*_*ell 6

一些语法问题:

  • if语句的开头行不应以半冒号结尾
  • 你的化合物比较需要另一组括号
  • 你几乎总是想用&&而不是&前者会短路

所以

if(age<16)&(age>-1);
Run Code Online (Sandbox Code Playgroud)

应该成为

if ((age<16) && (age>-1))
Run Code Online (Sandbox Code Playgroud)

或者,正如@Servy在评论中提到的那样

if (age<16 && age>-1)
Run Code Online (Sandbox Code Playgroud)