A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("你同意吗?(输入y/n)");
            string result = ReadInt();
            if (result == "y")
            {
                Console.WriteLine("请继续观看");
            }
            else
            {
                Console.WriteLine("谢谢使用,退出程序");
            }
            Console.ReadKey();

        }
        public static string ReadInt()
        {
            string s = "";
            s = Console.ReadLine();
            if (s == "y" || s == "n")
            {
                return s;
            }
            else
            {
                Console.WriteLine("您的输入有误,请重新输入!");
            }
        }
    }

评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

4 个回复

倒序浏览
说得很清楚  你的ReadInt()
方法 定义了一个string类型的返回值   但是在ReadInt()
方法的  else里 你没有给它定义返回值。。。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
知道了,谢谢前辈
回复 使用道具 举报
public static string ReadInt()
         {
             string s = "";
             s = Console.ReadLine();
             if (s == "y" || s == "n")
             {
                 return s;
             }
             else
             {
                 Console.WriteLine("您的输入有误,请重新输入!");
             }
         }
你的这段代码中如果程序执行到else 没有返回出值。你可以在else中写retrue null;

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
如果方法里的if条件不成立,那么进入else,但你的else里是没有给定返加值的,但方法定义时要求要有返加值
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马