此代码不应有错误。我不知道为什么这不起作用

时间:2019-01-30 18:55:23

标签: c#

我的编码老师给我做作业,以建立一个有效的代码。 所以我做到了,当我运行它时说有一个错误。我找不到一个,我的老师也找不到。所以我妈妈建议在这里问一下,看看我们是否搞砸了。抱歉,如果我有拼写错误,我仍在学习英语。 P.s.我正在学习c#语言。

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

namespace Dcoder
{
    public class Program
    {
        public static void Main(string[] args)
        {
            string sibling1; 
            string sibling2;
            int age_sibling1; 
            int age_sibling2;
            Console.WriteLine( " insert your name and your age " );
            sibling1 = string Console.ReadLine();
            age_sibling1 = int.Parse(Console.ReadLine());
            Console.WriteLine( " insert your sibrlings name and age " );
            sibling2 = string Console.ReadLine();
            age_sibling2 = int.Parse(console.ReadLine());         
            if (age_sibling1 > age_sibling2);
            Console.WriteLine(sibling1 + " is bigger " );
            Else;
            if (age_sibling2 > age_sibling1);
            Console.WriteLine(sibling2 + " is bigger " );
        }
    }
}

1 个答案:

答案 0 :(得分:1)

对代码进行了一些更改。一些建议:如果用户不输入数字,则Int.Parse将引发异常。我建议使用try / catch 或Int32.TryParse

另一件事是,如果您正在使用variable1,variable2,variable3等,则该花时间创建方法并避免使用variableN。

string sibling1, sibling2;
        int age_sibling1, age_sibling2;
        Console.WriteLine("Insert sibling 1 name ");

        sibling1 = Console.ReadLine();
        Console.WriteLine("Insert sibling 1 age ");

        age_sibling1 = int.Parse(Console.ReadLine());
        Console.WriteLine("Insert sibling 2 name ");

        sibling2 = Console.ReadLine();
        Console.WriteLine("Insert sibling 2 age ");

        age_sibling2 = int.Parse(Console.ReadLine());

        if (age_sibling1 > age_sibling2)
            Console.WriteLine($"{sibling1} is bigger ");
        else
            Console.WriteLine($"{sibling2} is bigger ");

        // Wait for user.
        Console.ReadKey();