• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
丶蘇Da同
博客园    首页    新随笔    联系   管理    订阅  订阅

【2017-03-02】C#函数,递归法

函数

函数的意义:独立完成某项功能的个体

函数的优势:1.提高代码的重用性     2.提高功能开发的效率   3.提高程序代码的可维护性

函数四要素:

1,输入:(值的类型+名称)

2,输出:return 后面输出的结果

3,函数名: 函数的名称

4,函数体:{}内的内容

(函数体和函数名必须存在)

定义:在Program类里面,Main函数外面

public static 函数输出类型(int/String)  函数名 (输入的值的类型+值的名称)【后面可以加无数个,输入值的类型加+值的名称。只要需要,值的类型相同不同都没事】

        {return +返回的值;}              //函数体

若无返回值,函数输出类型为Void

 

函数的多种形态:
1、有参数,有返回值     (最常用)
2、无参数,无返回值
3、有参数,无返回值
4、无参数,有返回值

函数返回多个值的办法:
ref - 可出可进       ref调用外部变量

out - 只出不进

 

递归:
递进去,归还回来的一个过程
使用的方法:
函数调用它本身

函数一遇到return就会立即停止后面代码的执行,跳出函数,执行调用本身后面归还的代码。

 

练习题

public static string 猜拳(int a, int b)
        {
            string c = "输入有误!";
            string s = "";
            string t = "";
            if (a >= 0 && a <= 2 && b >= 0 && b <= 2)
            {
                if (a == 0)
                     
                {
                    s = "石头";
                }
                else if (a == 1)
                {
                    s = "剪刀";
                }
                else if (a == 2)
                {
                    s = "包袱";
                }
                if (b == 0)
                {
                    t = "石头";
                }
                else if (b == 1)
                {
                    t = "剪刀";
                }
                else if (b == 2)
                {
                    t = "包袱";
                }

                if (a == b - 1 || a == b + 2)
                {
                    c = ("选手1的手势是" + s + ",选手2的手势是" + t + ",选手1获胜!");
                }
                else if (a == b + 1 || a == b - 2)
                {
                    c = ("选手1的手势是" + s + ",选手2的手势是" + t + ",选手2获胜!");
                }
                else if (a == b)
                {
                    c = ("选手1的手势是" + s + ",选手2的手势是" + t + ",平局!");
                }
            }
            return c;
        }
        static void Main(string[] args)
        {
            Console.Write("请输入一个手势(0/1/2):");
            int a = Convert.ToInt32(Console.ReadLine());
            Console.Write("请输入另一个手势(0/1/2):");
            int b = Convert.ToInt32(Console.ReadLine());
            string c = Program.猜拳(a,b);
            Console.WriteLine(c);

            Console.ReadLine();
        }

 



posted @ 2017-03-05 20:32  丶蘇Da同  阅读(288)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3