Program.MonthInteger(int,int)':并非所有代码路径都返回值

时间:2017-09-25 11:58:30

标签: c#

我正在尝试创建一个小应用程序,它接受来自用户的输入(应该是月份),并获取第一个字符并添加一个,取第二个并添加两个,然后取第三个,然后添加三个。

我没有使用额外的方法而只是重复自己,但我想尝试实现一个。

我收到错误“Program.MonthInteger(int,int)”:并非所有代码路径都返回一个值“使用我的方法,但是,我不知道为什么。它在方法声明下显示一条红色错误行。

我的代码在下面,有人可以帮助我,让我知道我哪里出错了吗?

谢谢。

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

namespace PasswordCalculator
{
    class Program
    {
        static void Main(string[] args)
        {
            char monthOne = MonthInteger(0, 1);
            char monthTwo = MonthInteger(1, 2);
            char monthThree = MonthInteger(2, 3);

            Console.WriteLine("Your Password is {0}{1}{2}", monthOne, monthTwo, 
monthThree);
        }

        static char MonthInteger(int stringChar, int addHowLetter)
        {
            int monthLetterInt;
            char monthLetter;
            string month;

            Console.WriteLine("What month would you like the password for?");
            month = Console.ReadLine();

            monthLetterInt = month[stringChar] + addHowLetter;
            monthLetter = Convert.ToChar(monthLetterInt);
        }
    }
}

2 个答案:

答案 0 :(得分:2)

您错过了退货声明。您需要将return monthLetter;添加为月份整数方法的最后一行

答案 1 :(得分:0)

MonthInteger方法不包含任何return语句