10-26C#基础回顾、汇总(函数重点)
第一部分==进制转换
重点记忆:
1、任意进制转十进制
按权展开法
p代表进制数,a/b/c...m分别代表进制数p从右往左第1位--第(n-1)位的数
公式:a*p0+b*p1+c*p2+..........+m*P(n-1);
2、十进制转其他进制(二、八或十六进制)
公式:
十进制转二进制:除商取余法,十进制的数整数部分除以除数(2)取余数,余数按照倒序排列;
十进制转八进制:十进制的数先转成二进制,再以小数点为左右起点,3位一组,不足补0,按2---8对应关系转换;
十进制转十六进制:十进制的数先转成二进制,再以小数点位左右起点,4位一组,不足补0,按2----16对应关系转换;
第二部分==语言基础
一、了解程序的大体结构
1、文件后缀
.cs----源文件、程序代码
.sln----解决方案文件
函数的四要素:名称、输入、输出、加工
2、主函数 (在一个项目中,主函数有且仅有一个,既是程序的入口处,也是程序的结束点)
格式:static void Main(string[] args)
{
主函数内容(在这里编写程序)
}
3、输入语句
string s=Console.ReadLine();//读取一行数据,并赋值给s(所读取的数据都默认是字符串型)
4、输出语句
Console.WriteLine("要输出的内容");WriteLine输出后自动换行;
Console.Write("要输出的内容");
二、编写程序必须的语言---数据类型(两大类)
1、值类型
整形:byte、int、short、long
浮点型:float、double、decimal
布尔型:true、false
日期时间型:DateTime
字符型:char+单引号
枚举类型:
Enum E {.....}形式的用户定义类型
结构体类型:
Struct S {.....}形式的用户定义类型
2、引用类型
类类型:object——所有其他类型的最终基类
string——Unicode字符
Class C{.....]形式的用户定义类型
数组类型:一维、多维数组和集合ArrayList,int[]和int[,];
接口类型:
Interface I{.....}形式的用户定义类型
委托类型:
Delegate T.D(....)形式的用户类型
3、变量
1)、变量名:字母、数字、下划线、@、汉字;
2)、定义:数据类型 变量名[= 值]
例:string s="这是一个变量";
3)、使用:赋值、取值
4、常量
1)、分类:符号常量、字面常量
2)、符号常量 变量声明前加const
const int a=3;
3)、使用:不能赋值,只能取值
5、快捷键汇总
1)、语句结束+;(分号)
2)、注释一行://(左斜线)
3)、注释一段区域:/*........*/
4)、删除一行;shift+delete
5)、注释选中行:Ctrl+(K,C)
取消注释选中行:Ctrl+(K,U)
6)、Alt+ →提示,更改
7)、shift+Ctrl+Space 常用于在()中查看如何输入
三、数据类型的转换
分类:
1、自动转换(隐式转换)
2、强制转换(显示转换)
强制转换三种方式:
1)用()。()内是转换后的数据类型,只能转换同一大类
2)用convert.
3)用parse.解析,用于字符串型转相应值类型
四、运算符
分类:
1、数学运算符
2、关系运算符
3、逻辑运算符
4、赋值运算符
5、条件运算符(?:)
第三部分==语句
分类:
选择控制:if,else,switch,case
循环控制:while,do,for,foreach
跳转语句:break,continue(跳出本次循环,继续下面的循环)
异常处理:try,catch(捕获异常),finally
第四部分==类
第五部分==数组
第六部分==集合、特殊集合
集合不同于数组,是一组可变数量的元素的组合,集合能存放不同数据类型的值,不限定长度;而数组只能存放一种数据类型的值;
一、集合的基本操作:
1、定义集合:
ArrayList al=new ArrayList();
2、添加数据:
3、插入数据:
4、移除数据:
5、排序:代替冒泡排序,但是只能从小到大排列;
6、翻转:
7、查某个元素出现的位置放到n里面
某个数出现的最后位置:
8、统计元素个数:
9、清空集合
10、al[i]是直接访问集合中的第i个元素
二、特殊集合
1、Stack---堆集合
2、Queue---队列集合
3、HashTable---哈希表集合
第七部分==结构体
结构体实际是一个自定义的集合,里面可以包含各种类型的数据,用法同集合。
1、定义:
2、用法:
第八部分==枚举类型
第九部分==函数(重点)
一个较大的程序一般应分为若干个程序块,每一个模块用来实现一个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C#语言中,子程序的作用是由一个主程序和若干个函数构成。有主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用多次。
简单得理解函数,就是把主函数里面大片的程序代码分割到其他函数(即自建的函数)中,便于对主函数的应用,所有的程序在主函数中执行时,都需要从其他函数中调用函数。
在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段 的工作量。
一、定义一个名为sum的简单函数,这里的参数叫做形参,并不是实际的参数。
Static void 函数名(数据类型 参数名)
{
函数体
return值;
}
在调用函数的时候,在Main函数中将实参传给函数体,函数体执行完后之后返回一个值到Main函数中,Main函数中定义一个变量来接收传递过来的值完成函数调用。
int a=函数名(实参)
二、函数调用
三、函数前面加注释
/// <summary>
/// 输入一个数字,返回它的和,这里写这个函数的功能
/// </summary>
/// <param name="m"></param>这里写m是做什么的
/// <returns></returns>这里写返回什么,也就是要求的数值
四、函数一个是传值另一个是传址
1、传值就是将实参的值传到所调用的函数里面操作,实参的值并没有发生变化。
2、传址就是将地址传到所调用的函数里面操作,实参的值也会跟着变化,传址的有数组和字符串string,字符串类型比较特殊;
五、结构形式:
修饰符(static/public/private)+ 返回值(有/无返回)+函数名(参数)---作用同主函数,但必须通过主函数的调用这个函数才能真正的起作用。
{
函数体(也就是程序代码,可以写任何程序)
}
函数下面就是主函数的执行:
ststic vioid Main(string[] args)----主函数在一个项目里有且仅有一个,即使程序的入口,也是程序的结束点;
{
主函数的调用
}
注:
1、修饰符有多种:static、public、private等
区别:它们之间可以访问的范围不同
static:是静态的,不能跨类使用,不用初始化;
public:可以在整个命名空间里公共使用,需要初始化;
private:只能在当前类里面使用,必须要初始化;
2、返回值
有返回值:多种数据类型int、string、double等
无返回值:void
3、函数名(有/无参数)如何加参数,参数类型有好多种
例:public void hanshu()/无参数
public string hanshu(int i,double b,string s)/有参数
4、()内不仅能传值,也能返回值---必须+out才能返回值,这是函数特有的
例:public int hanshu(int a,int b,out int s)//注意:这里写参数的顺序跟下面主函数调用时输出参数的顺序保持一致
//s是下面要输出的参数,要用out标识
5、在函数写完时,必须要用return返回,同开始学习时写入的程序必须要打印Console.WriteLine();
6、主函数调用部分:
1)需要返回什么样的数据类型,必须在前面转换成此数据类型
例:string s=hs.hanshu();//就是将这个名为hanshu的函数里面的数据转换成string类型,赋值给s;
2)解决函数中返回多个数值的问题,就是在()内加入要输出的参数+out,需要返回几个值就+几个out;
第十部分==递归
递归的特点就是自己调用自己,return是将数值返回到上一级执行。
10-26C#基础回顾、汇总(函数重点)的更多相关文章
- JS基础回顾_函数
函数 不要使用C风格的大括号 // log function return1() { return { name: 'oceans', } } function return2() { return ...
- Javascript基础回顾 之(二) 作用域
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(三) 面向对象
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- C#基础回顾:正则表达式
C#基础回顾:正则表达式 写在前面:本文根据笔者的学习体会结合相关书籍资料对正则表达式的语法和使用(C#)进行基本的介绍.适用于初学者. 摘要:正则表达式(Regular Expressions),相 ...
- 数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)
注:转载本文须标明出处. 原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html 数论算法 剩余系相关 学习笔记 (基础回顾,(ex ...
- 沉淀,再出发:Java基础知识汇总
沉淀,再出发:Java基础知识汇总 一.前言 不管走得多远,基础知识是最重要的,这些知识就是建造一座座高楼大厦的基石和钢筋水泥.对于Java这门包含了编程方方面面的语言,有着太多的基础知识了,从最初的 ...
- ORACLE| ORACLE基础语法汇总
创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库] 版权声明:本文为博主原创文章,遵循CC 4.0 B ...
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- Javascript基础回顾 之(一) 类型
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- JavaScript 基础回顾——对象
JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...
随机推荐
- 十分钟让你明白Objective-C的语法(和Java、C++的对比)
很多想开发iOS,或者正在开发iOS的程序员以前都做过Java或者C++,当第一次看到Objective-C的代码时都会头疼,Objective-C的代码在语法上和Java, C++有着很大的区别,有 ...
- android、ipone在文本框中输入文字的不同
1.android机会输入时会在键盘上先显示,你确定后再填充如文本框 2.ipone机是你输入时就直接填充到文本框,当你选择输入信息时,就会先把文本框的内容清空,在填充选择的文字,这时就会有个问题,如 ...
- Qt QFileSystemModel QDirModel 示例代码, 使用方法
1. QFileSystemModel 查看,添加 和 删除目录 2. 实现代码 dialog.h #ifndef DIALOG_H #define DIALOG_H #include <QD ...
- MATLAB一个数组中另一个数组的值
c = setdiff(a,b) 删掉素组a中数组b的元素 如:
- mysql 视图、触发器、事物、存储过程、函数
一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...
- SQL-表的操作(创建表,删除表,更改列,插入新行,更改行的值,删除表中数据)
一,操作表及列 1.创建表: CREATE TABLE test (ID int PRIMARY KEY IDENTITY,Name varchar(20) ) 2.删除表 DROP TABLE t ...
- uva11806(容斥原理)
11806 - Cheerleaders Time limit: 2.000 seconds In most professional sporting events, cheerleaders pl ...
- 使用visio 2010建立sql server数据模型——手动画、利用逆向工程
基础数据库这个词不在新鲜,老早就提出了.咱们从出生,个人信息就被放到一个基本信息库中了,在全国各地,通过身份证号就能知道你的基本信息.最近米老师 下发了一个任务,让我们开发几个小项目,考试系统.选修课 ...
- Python 2.7_爬取妹子图网站单页测试图片_20170114
1.url= http://www.mzitu.com/74100/x,2为1到23的值 2.用到模块 os 创建文件目录; re模块正则匹配目录名 图片下载地址; time模块 限制下载时间;req ...
- spark 单机版安装
jdk-8u73-linux-x64.tar.gz hadoop-2.6.0.tar.gz scala-2.10.6.tgz spark-1.6.0-bin-hadoop2.6.tgz 1.安装jdk ...