版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
总节顺序结构:语句顺序执行分支结构:语句在满足条件下执行if,
if-else,
if-else
if,
switch-case
表1?表2:表3(三元)循环结构:语句在满足条件下循环执行多次while,do-while,for
foreach跳转语句break(跳出当前循环),continue(大家观察),常量\枚举\结构(S)enum
Gender{male,female}enum
QQStatus{online,offline,hidden}枚举的用法,QQStatus
status=QQStatus.online;和用字符串比起来,用枚举的好处就是限定了变量的取值范围,程序处理起来更方便。const
类型常量名=常量值static
void
Main(string[]
args){const
int PI
=
3.14;PI
=
3.20;}确定数量、确定值的几个取值:东西南北、男女、上中下。字符串与枚举的转换public
enum
Gender{male,famale}//……Console.WriteLine("你的性别:{0}.",Gender.male.ToString());(Gender)(Enum.Parse(typeof(Gender),“male”));(会用就行)每一个值都对应一个数字典型的枚举类型:MessageBox.Show的参数(后面会学到)自己查看”神器”看看枚举最终是怎么回事?public
struct
Person{public
string
Name;public
int
Age;
public
string
Hobby;public
int
Popularity;public
void
SayHi(){//
….}}一次声明多个不同类型的变量结构体(S)为什么要使用结构,例如c#中ColorPoint都是结构结构的语法:访问修饰符struct结构名{定义结构成员}练习:1定义一个结构叫MyColor,有三个成员,分别定义为int类型的red,green,blue声明一个MyColor类型的变量,并对其成员赋值.使MyColor可以表示成一个红色.2定义一个结构类型Person,有三个成员,分别为姓名,性别,年龄性别用枚举类型声明两个Person类型的变量,分别表示张三男18岁/小兰女16岁数组(S)一次语文测试后,老师让班长统计每一个学生的成绩并计算全班(全班共60人)的平均成绩,然后把所有成绩显示出来.如果我让你输入一个就显示一个(或者输入完后再显示每个成绩),并且比较大小,平均值总成绩有何方法?如何声明变量?好的解决方法,使用数组.数组保存多个值;几乎任意类型都可以声明数组;int[]
nums=new
int[3];int[]nums={5,3,8};in[]nums=new
int[3]{1,2,3};int[]nums=new
int[]{2,3,5};数组的声明:以上四种int[]
nums=new
int[3]{5,3,8}//个数和声明数必须一致
int[]
nums=new
int[5]{5,3,8}//错误int[]
nums=new
int[]{5,3,8}//正确,可以省略数组个字使用索引器访问指定编号位置的元素,访问数组元素:nums[0]、nums[1]。索引从0开始。取到的元素的类型就是数组元素的类型。还可以对数组元素进行赋值数组的赋值与取值常见问题:求平均值,求最大值,求和,排序Array排序和反序练习:练习1:从一个整数数组中取出最大的整数,最小整数,总和,平均值练习2:计算一个整数数组的所有元素的和。练习3:有这样的一个字符串类型的数组{"老杨","老苏","老马","老牛"};要求变换成这样一个字符串:老杨|老苏|老马|老牛练习4:将一个整数数组的每一个元素进行如下的处理:如果元素是正数则将这个位置的元素的值加1,如果元素是负数则将这个位置的元素的值减1,如果元素是0,则不变。练习5:将一个字符串数组的元素的顺序进行反转。{“我”,“是”,”好人”}{“好人”,”是”,”我”}。第i个和第length-i-1个进行交换。try-catch的使用(简单用法)try{有可能出现错误的代码;}catch{如果try中的代码出现异常,则进去catch中}finally{最后执行的代码}在try
块中获取并使用资源,在catch
块中处理异常情况,并在finally
块中释放资源。throw:方法(函数)介绍(S)函数就是将一堆代码进行重用的一种机制。函数就是一段代码,这段代码可能有输入的值(参数),可能会返回值。一个函数就像一个专门做这件事的人,我们调用它来做一些事情,它可能需要我们提供一些数据给它,它执行完成后可能会有一些执行结果给我们。要求的数据就叫参数,返回的执行结果就是返回值。string
s=Console.ReadLine()就是一个有返回结果的函数;
Console.WriteLine("hello")就是一个有执行参数的函数,只有告诉WriteLine被打印的数据它才知道如何打印;inti=Convert.ToInt32("22")则是一个既有参数又有返回值的函数。有了函数写代码就像拼积木,C#中的各种各样的技术其实就是通过for、if等这些基础的语法将不同的函数按照一定的逻辑组织起来。Console.ReadLine();方法(S)方法的定义:看见static就是静态方法[访问修饰符][static]
返回值类型方法名(){方法体;}命名规则:方法名开头大写,参数名开头小写,参数名、变量名要有意义方法的调用,对于静态方法,调用有两种方式如果在同一个类中,直接写名字调用就行了.或者类名.方法名();return可以立即退出方法.常用的已经学过的方法:Console.WriteLine();Console.Write();Console.ReadLine();Console.ReadKey();int.Parse(string);Convert.ToInt32(string);对于由static修饰的方法,使用:类名.方法名()调用.如果在类中调用自己的由static修饰的方法,可以省略类名.变量的作用域(只讲局部变量)阅读下面的程序,说一下输出结果是多少?变量的作用域在方法中定义的变量称为局部变量,其作用域从定义开始,到其所在的大括号结束为止.在一个方法中想要访问另一个方法中的变量,怎么办?两种解决方法:参数和返回值举例:写一个方法,判断一个年份是否是润年.方法中的return语句导致函数立即返回。在返回值为void的函数中return,在返回值非void的函数中return
值练习,自己写一个方法
读取输入的整数,定义成方法,多次调用(如果用户输入的是数字,则返回,否则提示用户重新输入)
还记得学循环时做的那道题吗?只允许用户输入y或n,请改成方法3查找两个整数中的最大值:int
Max(inti1,int
i2)4计算输入数组的和:int
Sum(int[]values)思考:即然Console.WriteLine()是方法,那么为什么WriteLine的参数可以是字符串类型,也可以是数字类型,还可以是布尔类型
char类型呢?(重载---------重写)为什么要有方法的重载?函数重载(函数重名S)函数的重名:static
void
SayHello(string
name){Console.WriteLine("我是{0}",name);}static
void
SayHello(string
name){Console.WriteLine("Iam{0}",name);}static
void
SayHello(string
name){Console.WriteLine("我是{0}",name);}static
void
SayHello(int
age){Console.WriteLine("我的年龄{0}",age);}static
void
SayHello(string
name){Console.WriteLine("我是{0}",name);}static
int
SayHello(stringname){return
10;}static
void
SayHello(string
name){Console.WriteLine("我是{0}",name);}static
void
SayHello(string
name,string
nickname){Console.WriteLine("我是{0},昵称是{1}",name,nickname);}构成重载的条件:参数类型不同或者参数个数不同(不严谨的),与返回值无关。思考:方法只能返回一个值,当需要返回多个值时怎么办?例如:写一个方法,计算一个int类型数组中每个元素的总和和最大值与最小值?试试能不能返回个数组呢?(自己试试)如果类型不同呢?如何解决方法的out参数和ref参数函数参数默认是值传递的,也就是“复制一份”,例子:int
age=20;IncAge(age);Console.WriteLine("age={0}",age);out则是内部为外部变量赋值,out一般用在函数需要有多个返回值的场所。例:int.TryParse。方法的练习:重复让用户输入一个数,判断该数是否是质数,输入q结束? –
质数的判断用方法来实现bool
IsPrime(int
number)将一个字符串数组输出为|分割的形式,比如“梅西|卡卡|郑大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业示范温室大棚安装协议
- 儿童玩具设计总监聘任合同
- 厂房水电施工合同:印刷业篇
- 演出器材租赁合同
- 生态农业园绿化施工合同
- 建筑公司项目经理聘请协议
- 知识产权保护合同规范
- 图书馆资料储存分类方法
- 煤矿安全监查员工作规范
- 旅游景点设施管理
- 《装配基础知识培训》
- 出口退税的具体计算方法及出口报价技巧
- 五年级英语上册Unit1Getupontime!教案陕旅版
- PCB镀层与SMT焊接
- Unit 1 This is my new friend. Lesson 5 课件
- 2019年青年英才培养计划项目申报表
- 剪纸教学课件53489.ppt
- 芳香油的提取
- 劳动法讲解PPT-定稿..完整版
- 企业人才测评发展中心建设方案
- 假如你爱我的正谱
评论
0/150
提交评论