晋江文学城
下一章 上一章  目录  设置

8、面向程序设计 ...

  •   C# 重点知识复习

      一、重点知识点

      1.常用数据类型
      2.变量—变量名命名规则
      3.运算符和表达式-----数据类型转换
      4.流程控制语句:顺序结构 分支结构 break continue
      5.数组声明和初始化
      6.字符串的定义以及方法
      7.函数定义以及调用,参数传递,值传递,引用传递---形参和实参
      8.异常处理语句 try catch(0/1/n) finally(0/n)
      封装,继承,多态
      9.Class 访问权限属性(set get)构造方法析构方法
      10.重载(一个类)和重写(继承关系成立)
      11.析构方法不能继承 base
      New virtual override
      12.静态成员和静态类

      二、具体知识点

      三、补充的知识点:
      1.值传递与引用传递

      C# 中的类型一共分为两类,一类是值类型(Value Type),一类是引用类型(Reference Type)。

      值类型包括结构体(struct)和枚举(enum)。
      引用类型包括类(class)、接口(interface)、委托(delegate)、数组(array)等。

      常见的简单类型如short、int、long、float、double、byte、char等其本质上都是结构体,对应struct System.Int16、System.Int32、System.Int64、System.Single、System.Double、Syetem.Byte、System.Char,因此它们都是值类型。但string和object例外,它们本质上是类,对应class System.String和System.Object,所以它们是引用类型。

      值类型变量本身保存了该类型的全部数据,当声明一个值类型的变量时,该变量会被分配到栈(Stack)上。

      引用类型变量本身保存的是位于堆(Heap)上的该类型的实例的内存地址,并不包含数据。当声明一个引用类型变量时,该变量会被分配到栈上。如果仅仅只是声明这样一个变量,由于在堆上还没有创建该类型的实例,因此,变量值为null,意思是不指向任何类型实例(堆上的对象)。对于变量的类型声明,用于限制此变量可以保存的类型。

      C#中方法的参数传递默认的是值传递,引用传递和输出传递需要在参数类型前面对应加上ref、out限制符,由于输出传递和引用传递类似,这里只讨论引用传递。

      值传递参数是原变量的拷贝,值传递参数和原变量的内存地址不同,因此方法中对值传递参数的修改不会改变原变量。

      引用传递参数是原变量的指针,引用传递参数和原变量的内存地址相同,相应的方法中对引用传递参数的修改会改变原变量。
      代码1:

      代码2:

      练习题回顾

      代码1、手机电话

      代码2、【练习题】13.构造方法与重载 (编写类)
      创建一个类?为该类定义三个构造函数?分别执行下列操作
      1、传递两个整数值并找出其中较大的一个值
      2、传递三个double值并求出其乘积
      3、传递两个字符串值并检查其是否相同
      4、在main方法中测试构造函数的调用

      代码3 、
      用C#定义一个student类,该类具有数据成员myName,number,myAge及属性Name,Age,Number,
      要计算存在于系统中学生的人数,增加一个Number属性以计算存在于系统中学生人数,每创建一个对象,学生人数+1,每析构一个对象,学生人数减1。另外该类还具有打印方法,要求按“学生姓名:年龄”格式输出。 (Number这个属性不应该属于哪个特定对象,它是属于student类的)

      代码4、 编写一个figure
      4.编写一个Figure类,重载该类的构造方法,实现如下效↑
      当输入一个double参数r时,返回半径为的圆的面积
      当输入一个双参数r时,返回半径为的圆的面积
      当输入一个int参数d时,返回边长为d的正方形的面积
      当输入两个double参数a、b时,返回矩形的面积
      当输入两个双参数a、b时,返回矩形的面积

      代码5、 编写一个类Myclass, 重载类中的add方法,实现如下效
      当参数为两个整数时,返回两个整数的和
      当参数为两个小数时,返回两个小数的和
      当参数为两个字符串时,返回两个字符串的连接结果

      代码6、构造-析构(老师讲过的例题)

      代码8、猴子吃桃(自主练习题)
      猴子第一天摘了许多个桃子,先吃了所有桃子的一半,后又吃了一个;第二天又吃了剩下桃子的一半,后又吃了一个……第十天,剩1个桃子。问:猴子第一天摘了多少个桃子?

      代码9、分数序列
      题目:有一个分数序列2/1,3/2,5/3,8/5,13/8,21/13... 求出这个数列的前20项之和。

      代码10、判断素数1
      从键盘输入一个正整数,判断该数是不是素数(质数)。
      素数(也称质数),是指除了1和该数本身,不能被任何正整数整除的正整数。
      判断一个正整数m是否为素数,只要判断m可否被2~根号m之中的任何一个正整数整除,如果m不能被此范围中任何一个正整数整除,m即为素数,否则m为合数。

      代码11、 判断素数2
      C#l练习(用方法来实现:①判断一个给定的整数是否为“质数”。②计算1-100之间的所有质数(素数)的和
      代码1:判断一个给定的整数是否为“质数”

      代码2:计算1-100之间的所有质数(素数)的和

      代码12、判断并输出素数或约数
      C#里判断一个正整数是否为素数,若不是,则输出其所有约数

      代码13、打印水仙花数
      打印出所有"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该本身。例如:153是一个水仙花数,因为153=13+53+3^3。
      代码1:

      代码2:

      代码3:

      代码14、构造-析构、方法重构(老师讲过例题)
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using System.Threading.Tasks;
      //成员变量 private-protected,属性public(get set)
      //静态变量-static 静态方法-静态成员&局部成员
      //构造方法-new 和析构方法-默认
      //方法重构*********

      代码2、

      代码15、编辑程序如下图

      代码16、

      代码17、火锅烧烤西餐
      代码1:

      代码2、

      代码18、百马百担
      百马百担问题。有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马1担,编程计算共有多少种驮法?
      代码1

      代码2

      代码3

  • 昵称:
  • 评分: 2分|鲜花一捧 1分|一朵小花 0分|交流灌水 0分|别字捉虫 -1分|一块小砖 -2分|砖头一堆
  • 内容:
  •             注:1.评论时输入br/即可换行分段。
  •                 2.发布负分评论消耗的月石并不会给作者。
  •             查看评论规则>>
关闭
安装