函数/方法
非常抽象
独立完成某项功能的一个个体

函数的作用:

提高代码的重用性
提高功能开发的效率
提高程序代码的可维护性

函数分为:

固定功能函数
高度抽象函数

函数四要素:
输入,输出,函数体,函数名

public static 返回值类型 函数名(需要的参数,第二个,int a,string b)
{

return 上面的返回值类型;
}

函数的多种形态
1、有参数,有返回值
2、无参数,无返回值
3、有参数,无返回值
4、无参数,有返回值

函数返回多个值的办法
ref - 可出可进
out - 只出不进

代表练习:

1、定义一个函数,需要用户输入一个姓名
输出 “xxx,你好啊!”

namespace _2017_3_5函数___输入姓名
{
class Program
{
public static String nihao(String a)
{
String b = "“"+a+",你好啊!”";
return b;
}
static void Main(string[] args)
{
Console.Write("请输入您的姓名:");
String c= Console.ReadLine(); String s = Program.nihao(c);
Console.Write(s);
Console.ReadLine();
}
}
}

2、定义一个函数,需要用户输入两个姓名
输出“xxx和xxx你们的缘分指数是(1-100),散了吧/缘分不错!”

namespace _2017_3_5_函数___缘分指数
{
class Program
{ public static String yuanfen(string a, string b)
{
Random n = new Random();
int d = n.Next(, );
string c="";
if (d< )
{
c = "“" + a + "和" + b + "你们的缘分指数是:" + d+",散了吧!";
}
else if(d>&&d<)
{
c = "“" + a + "和" + b + "你们的缘分指数是:" + d + ",缘分不错!";
}
return c;
} static void Main(string[] args)
{ Console.Write("请输入要匹配的姓名:");
String e = Console.ReadLine();
Console.Write("请输入要匹配的姓名2:");
String f = Console.ReadLine();
String s = Program.yuanfen(e,f);
Console.Write(s);
Console.ReadLine();
}
}
}

3、定义一个函数,计算乘除,需要用户输入两个数和一个运算符
按照输入的运算符,对两个数进行相对的运算,输出结果

namespace _2017_3_5___函数____计算加减乘除
{
class Program
{
public static int jisuan(int a,int b,string c)
{int he=; if(c=="+")
{
he = a + b;
}
else if(c=="-")
{
he = a - b;
}
else if(c=="*")
{
he = a * b;
}
else if (c == "/")
{
he = a / b;
} return he; }
static void Main(string[] args)
{
Console.Write("请输入第一个数:");
int a1=Convert.ToInt32(Console.ReadLine());
Console.Write("请输入第二个数:");
int b1 = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入运算符:");
String c1 = Console.ReadLine();
int s = Program.jisuan(a1, b1, c1);
Console.Write("结果是:"+s);
Console.ReadLine(); }
}
}

4、猜拳方法
定义一个猜拳方法,返回比试结果,需要输入两个手势
手势可以是0 1 2

输出结果:“选手1的手势是石头,选手2的手势是包袱,选手2获胜!”
“手势有误!”

CaiQuan(1,2);

namespace _2017_3_5__函数____猜拳方法
{
class Program
{
public static string shoushi(string enda,string endb)
{ String end = "";
int a=; int b=;
if (enda =="石头")
{
a = ; }
if (enda == "剪子")
{
a = ; }
if (enda == "包袱")
{
a = ; }
if (endb == "石头")
{
b = ; }
if (endb == "剪子")
{
b = ; }
if (endb == "包袱")
{
b = ; }
if ((enda == "石头" && endb == "剪子") || (enda == "剪子" && endb == "包袱") || (enda == "包袱" && endb == "石头"))
{
end = "选手一胜利,选手二失败"; }
else if ((enda == "石头" && endb == "石头") || (enda == "剪子" && endb == "剪子") || (enda == "包袱" && endb == "包袱"))
{
end = "平局"; }
else
{
end = "选手一失败,选手二胜利"; }
return end; }
static void Main(string[] args)
{
Console.Write("请输入选手一的手势:");
String s = Console.ReadLine();
Console.Write("请输入选手二的手势:");
String ss = Console.ReadLine();
String sss = Program.shoushi(s,ss);
Console.Write(sss);
Console.ReadLine();
}
}
}

2017-3-5 C#基础 函数的更多相关文章

  1. 2017 Android 面试题 [ 基础与细节 ]

    2017 Android 面试题 [ 基础与细节 ] 感谢@chuyao抛出的这些问题,平时业务代码写多了,很多基础的东西变得含糊不清了,这次裸辞出来找工作确实没有之前顺利,顺便求上海Android开 ...

  2. 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数

    [源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...

  3. python基础——函数的参数

    python基础——函数的参数 定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了.对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复 ...

  4. python基础—函数嵌套与闭包

    python基础-函数嵌套与闭包 1.名称空间与作用域 1 名称空间分为: 1 内置名称空间   内置在解释器中的名称 2 全局名称空间   顶头写的名称 3 局部名称空间 2 找一个名称的查找顺序: ...

  5. python基础—函数装饰器

    python基础-函数装饰器 1.什么是装饰器 装饰器本质上是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能. 装饰器的返回值是也是一个函数对象. 装饰器经常用于有切 ...

  6. iOS 基础函数解析 - Foundation Functions Reference

    iOS 基础函数解析 - Foundation Functions Reference 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名- ...

  7. (2.16)Mysql之SQL基础——函数

    (2.16)Mysql之SQL基础——函数 关键词:mysql函数,mysql自定义函数,mysql聚合函数,mysql字符串函数,mysql数值函数 1.自定义函数 -- (1)一般形式 creat ...

  8. Python学习---基础函数的学习

    1.1. 基础函数 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 灌输一个概念:Python中函数就是对象,函数和我们之前的[1,2,3],'abc ...

  9. Python基础-函数参数

    Python基础-函数参数 写在前面 如非特别说明,下文均基于Python3 摘要 本文详细介绍了函数的各种形参类型,包括位置参数,默认参数值,关键字参数,任意参数列表,强制关键字参数:也介绍了调用函 ...

  10. PHP基础函数、自定义函数以及数组

    2.10 星期五  我们已经真正开始学习PHP 了,今天的主要内容是php基础函数.自定义函数以及数组, 内容有点碎,但是对于初学者来说比较重要,下面是对今天所讲内容的整理:  1 php的基本语法和 ...

随机推荐

  1. 除trigger()方法外的jquery手动触发事件

    trigger()可以触发指定事件是大家基本都知道的了. 除了trigger()之外我们也可以这样来触发: html <div id="box" style="he ...

  2. Java Des加解密方法(c#加密Java解密)

    最近我们用Java把一个用.net编写的老系统重新做了翻版,但是登录还是用.net的登录.这样就会遇到一个比较棘手的问题,我们登录用的cookie信息都是.net用des加密的,但我们不得不用Java ...

  3. 2.1. 托管对象模型是什么(Core Data 应用程序实践指南)

    托管对象模型是一种数据结构.在这里,数据结构.纲要.对象图.数据模型.托管对象模型这些术语是一个意思.它们是对同一个东西不同场景的描述.比如,对Core Data 而言是托管对象模型,对设计器来说是对 ...

  4. PHP5中PDO的入门教程

    PDO(PHP Data Object) 是PHP 5新出来的东西,在PHP 5.5中,更是强烈推荐使用PDO来处理数据库,将把所有的数据库扩展移到了PECL,那么默认就是没有了我们喜爱的php_my ...

  5. InnoDB的表类型,逻辑存储结构,物理存储结构

    表类型 对比Oracle支持的各种表类型,InnoDB存储引擎表更像是Oracle中的索引组织表(index organized table).在InnoDB存储引擎表中,每张表都有个主键,如果在创建 ...

  6. SVGEditor

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. node源码详解(三)—— js代码在node中的位置,process、require、module、exports的由来

    本作品采用知识共享署名 4.0 国际许可协议进行许可.转载保留声明头部与原文链接https://luzeshu.com/blog/nodesource3 本博客同步在https://cnodejs.o ...

  8. SuperSocket入门(五)-常用协议实现模版及FixedSizeReceiveFilter示例

             Socket里面的协议解析是Socket通讯程序设计中最复杂的地方,如果你的应用层协议设计或实现不佳,Socket通讯中常见的粘包,分包就难以避免.SuperSocket内置了命令行 ...

  9. 史上最全的synchronized解释

    首先:推荐使用synchronized(obj)这种方法体的使用方式,一个类里面建议尽量使用单一的同步方法,多种方法混用,维护成本太大. 其次:关于java5.0新增的ReenTrantLock方法: ...

  10. 【开源.NET】 分享一个前后端分离的轻量级内容管理框架

    开发框架要考虑的面太多了:安全.稳定.性能.效率.扩展.整洁,还要经得起实践的考验,从零开发一个可用的框架,是很耗时费神的工作.网上很多开源的框架,为何还要自己开发?我是基于以下两点: 没找到合适的: ...