入行前端对函数的掌握程度有可能直接影响以后工作的效率,使用函数可以高效的编写编码,节省时间,所以我整理了C#中最基础的函数知识点,虽然我在学习中

遇到很多问题,但是只要能够解决这些问题,都是好的。

一、认识函数

具有独立功能,并且通过名称重复使用的代码

函数的声明:函数的声明必须写“类”中

classProgeam
{
//这里可以进行函数声明
//这里可以进行函数声明
static void Main(string[] args)
{
//主函数
//这里可以进行函数声明
}
//这里可以进行函数声明
}

函数的调用:语法:函数名();

①调用函数,就是使用函数

②当程序运行到调用的语句时,会执行该函数的函数体

③函数的调用语法:函数名();

二、作用域和标识符

作用域:一个变量,仅在它所定义的大括号中有效;不同作用域中的变量,拥有独立的空间;当作用域结束时,改变量的数据会从内存中移除

标识符:需要自行命名的位置

标识符:变量名;函数名;类名;委托名;其他

驼峰命名法(望文知义)

变量名:首字母小写

函数名:首字母大写

c语言中的标识符:必须由数字、字母、下划线组成,并且不能以数字开头,若不满足;要求,则出现编译错误

三、声明带参数的函数

参数:要完成一件事,需要知道的额外条件

代码格式

static void 函数名(参数列表)
{
//注释内容
}

参数列表书写语法:数据类型 参数名,数据类型 参数名,....

参数在函数体中的应用:在函数体中,可以将参数当做已经声明的变量来使用

参数的作用域:仅在函数体中有效

总结

1.要完成一个动作,需要知道的额外条件,就是参数

2.声明函数时,参数必须包含数据类型和参数名

3.在函数体中,可以将参数当做变量使用

4.参数的作用域:仅在函数体中有效

四、调用带参数的函数

函数声明语法

public static void 函数名(形参列表)
{
//注释内容
}

形参列表中没个形参的书写语法:数据类型 形参名 {多个形参之间使用英文逗号分隔}

调用函数语法:函数名(实参列表)

实参列表中每个实参的书写方式:值 或 变量 或 表达式 {多个实参之间使用英文逗号分隔,实参的数量和类型必须和形参完全对应}

五、声明带返回值得函数

函数的声明语法

static 返回类型 函数名(形参列表)
{
//函数体
}

return:用于在函数体中得返回结果

return 值 或 变量 或 表达式;
static 返回类型 函数名(参数列表)

当代吗运行到return语句时:立即结束函数,返回return关键字后面的值、变量或表达式的结果

示例:判断一个数是不是奇数

static bolol IsOdd(int n)
{
if (n%2! = 0)
{
return true;
}
return false;
}

判断一个数是不是质数:

//判断一个数是不是质数
static bool IsPrime(int n)
{
if (n< 2)
return false;
for (int i = 2;i<n;i++)
{
if (n%i == 0)
{return false;
}
}return true;
}

总结:

①函数是指一个独立的功能
②完成功能需要额外的条件
③完成功能后产生的结果,就是函数的返回值
④函数分为声明和调用
⑤声明的完整语法:static 返回类型 函数名(形参列表){//函数体}
⑥调用的完整语法:函数名(实参列表)//该表达式的类型为函数的返回类型

六、调用带返回值的函数

函数调用语法:函数名(实参列表)

函数调用是一个表达式:返回类型与函数声明的返回类型一致

总结:

1.如果一个函数完成后需要穿梭·产生一个结果,该函数就有返回值
2.在声明一个带返回值的函数时,必须致命返回值的类型
3.函数仅能有一个返回类型
4.如果一个函数不需要返回,那么它的返回类型是void
5.使用return关键字来返回结果
6.返回的结果必须和声明的返回类型匹配
7.代码运行到return语句时,会立即结束函数,然后返回return后面的结果

七、函数签名

函数签名,是一个函数的函数名、参数列表、返回类型得统称

函数签名

函数名:代表函数的功能

参数列表:函数为完成它的功能,余姚的额外信息

返货类型:函数完成功能后,产生的结果的类型

对于函数的调用者,仅需要知道函数签名即可

函数签名:
//从指定的链接地址下载文件,保存到指定的路径
static void DownLoadFile(string fileUrl,string savePath)
函数调用:
//下载http://www.lovo.com/test.doc到d:\test.doc
DownLoadFile("www.lovo.com/test.doc","d:\test.doc");

编写正确的函数签名:

①仔细阅读需求,理解需求的含义

②为函数取一个贴合需求含义的函数名

③仔细考虑,该函数是否需要参数,需要哪些参数

④仔细考虑,该函数是否需要返回类型

总结:

1.函数签名,是函数名、参数列表、返回类型得统称

2.函数签名能够完整的阐述函数功能

3.无论是调用函数还是实现函数,仅需要知道函数签名

4.在编写函数时,必须保证函数签名与需求符合

八、文档注释

单行注释:通常写在函数体内,用于描述函数体内的代码

多行注释:通常写在函数体内,用于描述函数体内的代码

文档注释:通常写在函数体外,用于描述函数体外的代码

九、函数的重载

函数重载(overload):是指多个函数可以使用一个函数名,只需他们的参数列表不同(参数的数量或参数的类型不同)

总结:

①函数重载是指多个函数使用同一个名称

②重载的条件是参数的数量或类型不同

③重载的作用是降低调用难度

④当调用重载的函数时,计算机会根据实参自动匹配

十、函数的相互调用

输出两个整数的最大公约数和最小公倍数

GetGCD:得到两个整数的最大公约数

GetLCM:得到两个整数最小公倍数

总结:

在任何一个函数体中,都可以调用函数

在编写函数体时,可以充分利用已有的函数完成功能,从而降低开发难度

十一、递归

求斐波拉契数列第n位的值

//斐波拉契数列: 1 1 2 3 5 8 13
//f(n)表示斐波拉契数列第n位的值
f(1) = 1 f(2) = 1
f(n) = f(n - 1) + f
static int f(int n)
{
if (n == 1 || n == 2)
return 1;
else
return f(n - 1) + f(n - 2);

总结

①递归,是指在函数体中直接或间接的调用自身

②递归次序有终止条件,否则,将会无限制递归

③无线递归会耗尽内存,导致程序崩溃,必须避免这种情况

时刻鼓励自己:

 

       埋头读书,抬头做人!

 

  不登高山不知天之高也,不临深溪不知地之厚也

 

  懦弱的人只会裹足不前,莽撞的人只能引为烧身,只有真正勇敢的人才能所向披靡

 

  我们这个世界,从不会给一个伤心的落伍者颁发奖牌。

 

  海浪的品格,就是无数次被礁石击碎又无数闪地扑向礁石、

 

  鞋底磨穿了,不等于路走到了头。

 

  松驰的琴弦,永远奏不出时代的强音。

 

  躺在被窝里的人,并不感到太阳的温暖。

 

  不安于现状,不甘于平庸,就可能在勇于进取的奋斗中奏响人生壮美的乐间。

 

  不去耕耘,不去播种,再肥的沃土也长不出庄稼,不去奋斗,不去创造,再美的青春也结不出硕果。

转载于:https://www.cnblogs.com/xiaoweiba/p/7399417.html

初学者入门web前端:C#基础知识:函数相关推荐

  1. 初学者入门web前端 C#基础知识:数组与集合

    对于初学者,想要入门web前端,要有足够的信念和坚持,不然只会越走越远,我现在就深深的体会到. 我本是一个很拒绝代码的人,以前想过UI设计,但是在这段学习时间里,发现其实只要认真,代码并不是很难 所以 ...

  2. web前端开发基础知识整理以及前端视频教程

    随着移动互联网的发展和越来越多创业公司的加入,Web前端工程师的岗位空缺越来越大,薪资迅速上涨.Web前端工程师比以往更具有号召力. 想要自学成为炙手可热的Web前端工程师?靠零碎化的短视频可不行,你 ...

  3. web前端开发基础知识_前端开发是什么?学前端开发需要学什么语言?你想成为程序员吗?...

    Web前端是什么 前端的本质就是通过一定的程序代码来实现用户界面的ui 交互.可以认为用户在终端所看到的和所操作的都属于前端,也就是说分为渲染页面和处理用户操作两块. 前端开发是创建Web页面或app ...

  4. web前端开发基础知识_薪资30K+的web前端怎么做到的?

    好的web前端年薪会有多少?首先,我们要知道怎么才能成为一个所认为的"好的web前端",其次,自己能值多少价值? 用户体验为王,是互联网时代的座右铭.人们在享受互联网带来的便捷的同 ...

  5. html中如何实现选择存储路径的功能_HTML是Web前端的基础知识,刚入门的你真的学对了吗?...

    HTML 概念 前端最核心的技术 HTML + CSS + javascript HTML - 结构 - 骨架 CSS - 样式 - 效果 JAVASCRIPT - (用户)行为 - 做的事情 超文本 ...

  6. WEB前端模块化基础知识

    前段模块化基础 概念 前端模块化其实就是将一个完整的单一的功能整合起来形成单独的一个功能组件,当需要用的的时候只需要加载这个组件,然后便可以通过该组件唯一的名称去使用其中的内容. 主流模块化框架 co ...

  7. 【Web前端培训基础知识】ES5及ES6this详解

    今天,我们学习一下JavaScript中的this.我们从什么是this,ES5及ES6中this的几种情况进行学习.让this变的so easy,我们这里说的都是非严格模式下. 什么是this th ...

  8. web前端数据库基础知识

    第一篇:深入浅出数据库 第一章 MySQL基础 1.1 数据库概述 数据库是一个存放数据的仓库.这个仓库是按照一定的数据结构来组织.存储数据的,我们可以通过数据库提供的多种方法来管理数据库中的数据. ...

  9. Web前端开发基础三剑客学习知识分享

    Web前端开发基础知识学习路线分享,前端开发入门学习三大基础:HTML.CSS.JavaScript.除此之外还要学习数据可视化.Vue.React.Angular相关框架,熟练运用框架提升开发效率, ...

最新文章

  1. left4dead2 常用配置
  2. Linux-wget/tar/ln 函数
  3. Flink从入门到精通100篇(一)-如何在Mac 上搭建 Flink环境并做简单测试
  4. RHCE实验室NTP时间服务器配置最终版
  5. jaxb xsd生成xml_使用JAXB从XSD生成XML
  6. 【CodeForces - 574C】Bear and Poker(思维,剪枝,数学)
  7. 2008年不错的图书
  8. vue项目中常见问题及解决方案
  9. VueJs入门(一)
  10. 记录一下所了解的一些第三开源框架
  11. 长安链技术架构与共识模块介绍
  12. 2010年c语言上机题库,2010年全国计算机等级考试二级C语言上机题库
  13. ArcGIS行政区位图制作流程(附行政区划练习数据)
  14. 写论文参考文献,如何查看一些书籍的随书光盘?如何查找一些书籍的原文阅读?如何高效合理的 运用高等学校数字图书馆、大学图书馆? 这里将给你答案
  15. 计算机网络原理的思维导图汇总
  16. jquery表单的提交
  17. python 重命名文件出现乱码_python处理文件名乱码
  18. 配电室智能监控系统设计及实现分析-Susie 周
  19. 容器技术之Kubernetes
  20. python中value的含义_生成的scikit学习决策树中的value属性的含义是什么?

热门文章

  1. office2021 版本2203现已适配win11界面风格
  2. 我奋斗18年,和你或者咖啡没有任何关系
  3. Kubernetes Dashboard搭建流程
  4. stm32蓝牙模块通过手机和电脑双向通信
  5. 道通科技自动化测试面试
  6. 真香!java设置全局变量
  7. PHP microtime 返回当前 Unix 时间戳和微秒数
  8. JavaScript 01 JavaScript 是什么
  9. h5解决外置浏览器和小程序跨域问题
  10. linux for while语句的使用