运行后提示说未经处理的异常,输入字符串格式不正确

对照了答案,答案也是这样写的,不同之处是abcd四个变量的名称。
请问哪里出错了?
static void Main(string[] args)
{
int a, b, c, d;
Console.WriteLine("Enter first number:");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter second number:");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter third number:");
c = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter fourth number:");
d = Convert.ToInt32(Console.ReadLine());

        Console.WriteLine("The product of {0] and {1} and {2} and {3] is {4}.",
            a,b,c,d, a * b * c * d);
    }

程序没有错,但是
Convert.ToInt32(Console.ReadLine());
输入的不是整数,无法转换。

刚才没看到
{0}和{3}写成{0] {3]了

图片说明

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

namespace Q690294
{
    class Program
    {
        static void Main(string[] args)
        {
            int a, b, c, d;
            Console.WriteLine("Enter first number:");
            a = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Enter second number:");
            b = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Enter third number:");
            c = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Enter fourth number:");
            d = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("The product of {0} and {1} and {2} and {3} is {4}.",
                a, b, c, d, a * b * c * d);
        }
    }
}