我是新来的,我正在学习使用方法等等,我在方法中有我的代码,但在代码中有一个控制台。ReadLine();这是我不想要的。基本上,我需要做的是一个包含10个方法的大作业,作为输入,你必须调用哪个方法,然后调用实际的输入,但是当我的方法中有一个readline时,我必须给出3个,而不是2个。如果有人知道如何帮助noob,我的代码如下
基本上是int.parse(consolereadline);我需要以某种方式删除它,以便我只能读取方法编号,然后读取实际输入。
static object GetNextLeapYear(int year1)
{
int n, year;
n = int.Parse(Console.ReadLine());
year = n + 4 - (n % 4);
if ((year % 100 == 0) && (year % 400 != 0))
{
year += 4;
}
return year;
}
static void Main(string[] args)
{
string method = Console.ReadLine();
switch (method)
{
case "1":
int input = Convert.ToInt32(Console.ReadLine());
GetNextLeapYear(input);
Console.WriteLine($"{GetNextLeapYear(input)}");
break;
我认为您正在寻找的是删除对GetNextLeapYear(input)的第一个调用代码>在
案例“1”
正文中。您没有存储该调用的结果,而是在控制台中显示第二个调用的结果。WriteLine($“{GetNextLeapYear(input)}”)代码>这会导致对控制台进行额外(且不必要)调用。GetNextLeapYear方法中的ReadLine。
只需删除“n=int.Parse(Console.ReadLine())”我根本不知道为什么需要它
static int GetNextLeapYear(int inputYear)
{
var year = inputYera+ 4 - (inputYear % 4);
if ((year % 100 == 0) && (year % 400 != 0)) year += 4;
return year;
}
和代码
Console.WriteLine("pls, type a year");
int input = Convert.ToInt32(Console.ReadLine());
var leapYear = GetNextLeapYear(input);
Console.WriteLine($"next leap year is {leapyear}");
但你会用这样的东西作为方法如果不是你的高中课题
public static int GetNextLeapYear(int year)
{
do {
year=year+1;
if (DateTime.IsLeapYear(year)) return year;
} while (true)
}