【问题标题】:This code shouldnt have an error. I cant figure out why this doesnt work此代码不应该有错误。我不知道为什么这不起作用
【发布时间】:2019-01-31 10:49:43
【问题描述】:

我的编码老师给了我作业,让我编写一个工作代码。 所以我做了,当我运行它时它说有一个错误。我找不到,我的老师也找不到。所以我妈妈建议在这里问一下,看看我们是否搞砸了。对不起,如果我有拼写错误,我还在学习英语。附:我正在学习语言 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 " );
        }
    }
}

【问题讨论】:

  • 什么样的错误?它在哪里?它说什么?
  • 您的if 附近有一个错误,您不需要在if (...); 中使用分号。接下来是 Else c# 区分大小写,应该是 else 和再次 - 没有分号!
  • 你也应该从string Console.ReadLine();中删除string
  • 既然这是一个家庭作业和一个学习练习,你真的应该学习如何自己修复这些错误(即使有些人已经为你完成了)。看看this link,它会准确地告诉你错误在哪里。从那里,你应该看看你正在尝试做什么,然后研究如何实际去做(例如Console.WriteLineif-else
  • 修复了代码格式并移除了额外的代码 cmets

标签: c#


【解决方案1】:

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

另一件事是,如果您正在使用变量 1、变量 2、变量 3 等。是时候创建一个方法并避免使用变量 N。

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();

【讨论】:

  • 谢谢!!我今天将很快尝试这些答案。
猜你喜欢
  • 2021-03-11
  • 2015-07-06
  • 2020-09-19
  • 2014-01-17
  • 2020-01-11
  • 1970-01-01
  • 2018-12-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多