版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C#课程复习纲要第一部分知识点C#控制台应用程序结构,熟练掌握输入、输出语句第二部分知识点(重点章节):C#编程基础C#标识符的命名规则;C#常用关键字【重点】:C#的数据类型。基本数据类型(又称值类型)和引用类型(如:字符串、数组、类、接口等)C#常量和变量;转义字符数据类型转换(自动类型转换、强制类型转换) 【重点】:运算符和表达式【重点】:程序的控制结构 (顺序结构、分支结构、 循环结构、 跳转结构) 控制结构的应用,如:阶乘计算、九九乘法表、杨辉三角、百鸡(百马)问题、水仙花数等问题的编程。第三部分知识点 (重点章节) 一、二维静态、动态数组的创建及使用;字符串的定义、 赋值及常用方法
2、;Math、string、Array、ArrayList、Integer、Float、Double等类的常用方法。Parse、ToString、Format等方法的使用第四部分知识点面向对象程序设计概述。理解类和对象的内涵,并能正确声明类、创建对象。熟练定义类、属性、字段、方法及构造方法和析构方法。理解委托和事件的关系及接口概念掌握集合,包括:ArrayList、List、Queue、Stack类知识点:标识符的命名规则l 标识符的合法符号包括:字母、数字、下划线、连接字符、组合字符、格式设置符。字母为大写或小写的英文字母,数字为09;l 标识符必须以字母或下划线开头,即数字不允许为标识符的首
3、字母; l 标识符区分大小写;l 标识符不允许与关键字相同,但允许关键字作为标识符的一部分。如同名,可在变量前加;l 变量名不能与C#的库函数同名。 知识点:转义字符l 转义字符用于表述特定的功能或执行特殊的动作;l 常见转义字符:水平制表符、退格符、回车符、换行符等。 知识点:关键字l 关键字是C#语言定义、并赋予特定含义的一类标识符,用户只能按照规定使用这些关键字;l 掌握常见关键字。知识点:常量和变量、数据类型l 基本数据类型;l 变量是程序运行过程中数据类型不变,但数值可以发生改变的一种量;l 变量三要素:变量名、变量数据类型、变量值;l 变量要先定义、再使用。知识点:数组l 数组是具
4、有相同类型的数据的集合,数组元素的类型可以使基本数据类型,也可以使类或接口;l 使用数组名和下标可以唯一确定数组中的每个元素,数组下标的索引号从0开始,故最后一个元素的索引号应是(数组长度-1);l 数组通过Length属性获得数组的长度;l 数组必须先经过声明和初始化后才能使用;l 重点掌握一、二维静态数组;l 动态数组ArrayList的使用及常用方法,如:Add()、Sort()、Insert()、Clear()等。ll知识点:字符串类、Math类及其常用方法l 字符串是用双引号括起来的字符序列,而字符则是使用单引号括起来的单个字符;l C#语言将字符串视为对象,string视为类;l
5、字符串常用方法,如:获得字符数组、获得字符串的长度、字母大(小)写转换、字符串的连接、删除首尾空格等;l Math类中的常见静态方法,如:Sqrt()、Pow()、Round()、Ceiling()、Floor()、Max()、Min()等方法。知识点:运算符、表达式、语句;数据类型转换l 运算符是指对数据实施运算控制的符号。以a+b为例,参与运算的a和b称为操作数,操作数可以是常量、变量、表达式和有返回值的方法;+为运算符,各类运算符应熟记。l 表达式是指由运算符和操作数连接而成,符合计算机语言语法规则,并具有特定结果值的符号序列,a+b为表达式l 算术运算符及算术表达式;关系运算符及关系表
6、达式;逻辑运算符及逻辑表达式;赋值运算符及赋值表达式;条件运算符及条件表达式;l 运算符的优先级; 运算符的结合性;l 有效表达式后加上分号就构成了语句,如: int c=a+b;l 理解自加、自减及复合赋值运算;l 表达式中涉及不同类型的数据时,需要进行数据类型转换。类型转换包括:自动类型转换和强制类型转换。知识点:控制结构l 控制结构包括:顺序结构、选择分支结构、循环结构、跳转结构。l 选择分支结构:if-else、switch-casel 循环结构:while、do-while、for、foreachl 跳转结构:break、continue、goto、return例如:阅读下面程序,程
7、序编译或运行结果是 D 。public class Test static boolean f (char c) Console.Write (char)(c+2); return true; public static void Main( string args ) int i =0; for ( f(A); f (B)&(i10 ? 100.0 :50 值为50.0。 ( 对 )4)类成员分为静态成员和非静态成员,静态成员属于类的对象所有,非静态成员属于类所有,只能由类名来访问。 ( 错 )5)C#中,对属性访问时将会调用属性的set访问器和get访问器,一般与类中的字段成员有对应关系。
8、( 对 )6)数据在使用前一定要先声明,然后才能引用。 (对)7)使用Length属性可以获得字符串或静态数组的长度。 ( 错 )8)在循环体内,使用break;语句可以跳出循环。( 对 ) 四、代码补充题1) 请在横线处填入适当内容将代码补充完整,使程序能正确运行。2) 下面程序对数组中每个元素赋值,然后按逆序输出。请在横线处填入适当内容,使程序能正确运行。 class ArrayTeststatic void Main (string args) int i;int a=new int5;for( i=0; i=0; i-) Console.WriteLine(a+i+=+a i );3)
9、 执行以下代码,输出结果是:int i=5; switch (i) case 3: Console.WriteLine(java); break;case 4: Console.WriteLine (c#); case 5:Console.WriteLine (html); default: Console.WriteLine (default); 五、简答题1) 列举C#语言的优点:简洁的语法精心地面向对象设计与Web的紧密结合完整的安全性与错误处理版本处理技术灵活性与兼容性2) C#中数据类型可分为基本数据类型和引用数据类型,简述C#有哪些基本数据类型,有哪些引用类型,并写出对应的关键字:
10、bool、byte、sbyte、char、decimal、double、float、int、uint、long、ulong、object、short、ushort、string3)继承和多态的含义:多态:类的多态性主要指类成员方法的多态。有方法的重载、重写和隐藏,这些东西只要你多写点代码理解了语法后就很容易撑握的。你可以从怎样在类中实现方法的重载、重写和隐藏开始。4)理解重载和重写概念: 重载的条件:1.必须在同一个类中2.方法名必须相同3.参数列表不能相同。重写的条件:1. 在不同的类中 2. 发生方法重写的两个方法返回值,方法名,参数列表必须完全一致 3. 子类抛出的异常不能超过父类相应的
11、方法抛出的异常 4. 子类方法的访问级别不能低于父类相应方法的访问级别(public,package,protected, private) 5.方法体不同重载: 重载发生在同一个类中;重载主要是针对同一个类中方法名相同但参数(必须的)不同或返回类型(不是必须的)不同的情况重写:重写发生在有继承关系的类之间 重写发生在派生类上,通过override关键字来改写从其父类继承过来的具有相同返回值,方法名称和参数列表的方法。5)理解类中字段和属性的关系:若在类的内部记录事物的状态信息则用字段,一般用private修饰,以防对外使用对外公布的事物则使用属性,一般用public修饰,通常和私有字段联合使
12、用,通过属性来对私有字段赋值,或通过属性来获取私有字段的值。6)理解委托和事件:委托是对函数的封装,可以当作给方法的特征指定一个名称。而事件则是委托的一种特殊形式,当发生有意义的事情时,事件对象处理通知过程。委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托通过delegate来声明。而事件是说在发生其他类或对象关注的事情时,类或对象可通过事件通知它们。事件对象用event声明。六、编程题1) 使用循环或递归,实现对任意输入的一个整数返回它的阶乘。提示: 循环和递归两种方式任选其一即可。【参考代码1】递归public class Demo static in
13、t fac(int n) if (n=0) return 1; else return n*fac(n-1); public static void Main(string args) int n=Int32.Parse(Console.ReadLine();Console.WriteLine(n!=0,fac(n); Console.ReadKey(); 【参考代码2】循环public class Demopublic static void Main(string args)int inputVal= Int32.Parse(Console.ReadLine();int result=1;
14、for(int i=1;i=inputVal;i+)result*=i; Console.WriteLine(n!=0,result); Console.ReadKey(); 2) 使用循环结构打印出九九乘法表。最终的输出结果如下:1*1=12*1=22*2=43*1=33*2=63*3=94*1=44*2=84*3=124*4=165*1=55*2=105*3=155*4=205*5=256*1=66*2=126*3=186*4=246*5=306*6=367*1=77*2=147*3=217*4=287*5=357*6=427*7=498*1=88*2=168*3=248*4=328*5=
15、408*6=488*7=568*8=649*1=99*2=189*3=279*4=369*5=459*6=549*7=639*8=729*9=81【参考代码1】public class MultiTablepublic static void Main(string args)for(int i=1;i10;i+)for(int j=1;j=i;j+)Console.Write(“0*1 =2+t,i,j,i*j);Console.WriteLine();【参考代码2】public class MultiTablepublic static void Main(string args)for
16、(int i=1;i10;i+)for(int j=1;ji) break;Console.Write (i+”*”+j+”=”+i*j+”t”);Console.WriteLine();3) 百马问题 class Program static void Main(string args) int a, b, c; /*大马:3;中马:2; 2匹小马:1 现在有100担 100匹马 /* a表示大马 b表示中马 c表示小马 for (a = 0; a = 33; a+) for (b = 0; b = 50; b+) for (c = 0; c = 100; c = c + 2) if (a
17、+ b + c = 100 & 3 * a + 2 * b + 0.5 * c = 100) Console.WriteLine(大马0匹,中马1匹,小马2匹, a, b, c); Console.ReadKey(); 4) 水仙花数问题class Program static void Main(string args) int a, b, c; Console.WriteLine(水仙花数有:); for (int i = 100; i 1000; i+) a = i / 100; /获得百位上的数字 b = (i - a * 100) / 10; /获得十位上的数字 c = i - a
18、* 100 - b * 10; /获得个位上的数字 if (a * a * a + b * b * b + c * c * c = i) Console.WriteLine(i.ToString(); Console.ReadKey(); 水仙花数是指一个 n 位数 ( n3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:13 + 53+ 33 = 153)5) 类的定义(包括:常量、字段、属性、方法、构造方法及析构方法的定义)、对象的创建及使用。常量:一旦初始化就不再发生变化,也可以理解为符号化的常数,例如:可以用常量PI来代替3.1415926,当需要修改PI精度时,只需在代码
19、中改变PI的初始值就可以。常量的声明:需要指定其数据类型、常量名,以及初始值,并需要使用const关键字例如:public const double PI = 3.1415;其中,public可以用以下代替。l public:全局变量l private:局部变量l new:创建新变量,不继承父类同名变量常量和变量在代码上的区别:就是有无const,声明时有const则为常量,否则就是变量。字段:字段(field) 用来存储数值或对象的真正实体 简单说是私有变量(不一定是私有.)是字段 不过是个公开的字段私有的话就是private int i; 这样外部就无法访问到了最简单的字段和属性的定义cl
20、ass Class1 int val; public int Value get return this.val; set this.val = value; 它包含一个字段和一个有公开读写访问权的属性属性:读写那些私有字段的值。 通过属性访问数据,可以是指成只读、只写或者读写。通过get关键字来设置只读,set关键字来设置可写,return返回读取属性的值,value表示外部是指的数值。private string test; /创建属性 Test public string Test get return test; set test = value; 方法:通过方法可以封装一段功能完整的
21、代码,例如 public double GetArea() double r = 10; retunrn Math.PI*r*r;很多时候,方法最后是没有返回任何数值的,那么返回类型就使用void关键字表示。定义Student类。其中包括四个私有字段(name,age,sex和score)、一个构造方法和show()方法。各字段和方法的含义如下:字段name为String类型,用于存储学生的姓名;字段age为int 类型,用于存储学生的年龄;字段sex为boolean类型,用于存储学生性别,男生为false,女生为true;字段score为double类型,用于存储学生的成绩;构造方法包括四个
22、参数,用于为字段name、age、sex和score赋值;show()方法无参数,用于打印输出字段name、age、sex和score的信息。编写程序测试Student类,使用构造方法创建对象并调用show()方法显示输出。class Program static void Main(string args) Student s = new Student(zhang, 18, true, 90); s.show(); class Student private string name; public string Name get return name; set name = value; private int age; private bool sex; private double score; public Student(string name,int age,bool sex,double score) = name; this.age = age; this.sex = sex; this.score = score; public void show() Console.WriteLine(name+;+sex+t+age+t+score);百鸡问题公鸡5钱一只,母鸡3钱一只,小鸡3只一钱c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度山西省高校教师资格证之高等教育法规全真模拟考试试卷A卷含答案
- 2023年冷墩钢投资申请报告
- 金融岗位招聘笔试题及解答(某大型央企)2024年
- 2025年教师资格考试小学面试社会试题及解答参考
- 2024专业运动服装订货协议
- 2024年油品储备设施租赁协议范本
- 2024年度建筑项目施工责任担保协议
- 2024年楼宇外墙面刷新工程协议样本
- 2024商铺转租协议格式
- 文书模板-竞业协议核实流程
- 人教版美术八年级上册 第一单元 第1课《造型的表现力》 教案
- 数学-湖湘名校教育联合体2024年下学期高二10月大联考试题和答案
- 2024年上海市教育委员会科技发展中心拟聘人员历年高频难、易错点500题模拟试题附带答案详解
- 2024-2030年中国共享汽车行业市场深度调研及发展趋势与投资前景研究报告
- 2024-2030年中国门禁机市场发展趋势及前景运行战略规划报告
- TCHAS 10-2-1-2023 中国医院质量安全管理 第2-1部分:患者服务患者安全目标
- 六年级英语上册 Module 8 Unit 2 I often go swimming教案2 外研版(三起)
- 全国职业院校技能大赛高职组(供应链管理赛项)备赛试题库(含答案)
- 滴灌安装工程合同2024年
- 小区业主微信群管理规约
- HG∕T 2469-2011 立式砂磨机 标准
评论
0/150
提交评论