<C#任务导引教程>练习七
//55,类的声明示例
using System;
class Date
{
public int year;
public int month;
public int day;
public void print()
{
Console.WriteLine("{0}/{1:D2}/{2:D2}", year, month, day);
}
}
class Program
{
static void Main()
{
Date t = new Date();
Console.Write("请输入年:");
t.year = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入月:");
t.month = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入年:");
t.day = Convert.ToInt32(Console.ReadLine());
t.print();
}
}
//56,利用“属性”访问私有数据成员示例
using System;
class Date
{
int year;
int month;//默认私有成员
int day;
public int Year
{
get { return year; }
set { year = value; }
}
public int Month
{
get { return month; }
set { month = value; }
}
public int Day
{
get { return day; }
set { day = value; }
}
public string Print//定义日期信息属性
{
get
{
return Year + "/" + Month + "/" + Day;
}
}
}
class Program
{
static void Main()
{
Date d = new Date();
d.Year = 2010;
d.Month = 4;
d.Day = 20;
Console.WriteLine(d.Print);
}
}
//57,利用'属性"和"方法"访问私有数据成员示例
using System;
class Date
{
int year, month, day;
public int Year
{
set { year = value; }
}
public int Month
{
set { month = value; }
}
public int Day
{
set { day = value; }
}
public void Print()
{
Console.WriteLine("year:" + 2010);
Console.WriteLine("month:" + 4);
Console.WriteLine("day:" + 20);
}
}
class Program
{
public static void Main()
{
Date d = new Date();
d.Print();
}
}
//58,声明一个正方形类型和一个圆类型,然后分别求他们的面积
using System;
class Square
{
int length;
public void set(int l)
{
length = l;
}
public int area()
{
return length * length;
}
}
class Circle
{
int length;
public void set(int l)
{
length = l;
}
public double area()
{
return 3.1416 * length * length / 4;
}
}
class Program
{
static void Main()
{
Square s = new Square();
s.set(15);
Console.WriteLine("正方形面积为:{0}", s.area());
Circle c = new Circle();
c.set(10);
Console.WriteLine("圆形面积为:{0}", c.area());
Console.ReadLine();
}
}
//59,声明一个日期类,并进行日期的设置,判断闰年和输出等有关操作
using System;
class Date
{
int year, month, day;
public void set(int y, int m, int d)
{
year = y;
month = m;
day = d;
}
public bool isLeapYear()
{
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
public void print()
{
Console.WriteLine("{0}-{1:D2}-{2:D2}", year, month, day);
}
}
class Program
{
static void Main()
{
Date d = new Date();
d.set(2000, 12, 6);
if (d.isLeapYear())
d.print();
}
}
//60,构造函数的定义
using System;
class Box
{
public Box(int h, int w, int l)
{
height = h;
width = w;
length = l;
}
public int volume()
{
return (height * width * length);
}
private int height, width, length;
}
class Program
{
static void Main()
{
Box box1 = new Box(12, 25, 30);
Console.WriteLine("长方形box1的体积是:{0}", box1.volume());
Box box2 = new Box(15, 30, 21);
Console.WriteLine("长方形box2的体积是:{0}", box2.volume());
}
}
//61,使用不同参数用构造函数对成员变量赋初值示例。重载构造函数
using System;
class Box
{
public Box()
{
height = 10;
width = 10;
length = 10;
}
public Box(int h)
{
height = h;
width = 10;
length = 10;
}
public Box(int h,int w)
{
height = h;
width = w;
length = 10;
}
public Box(int h,int w,int l)
{
height = h;
width = w;
length = l;
}
public int volume()
{
return (height * width * length);
}
private int height,width,length;
}
class Program
{
static void Main()
{
Box box1=new Box();
Console.WriteLine("长方形box1的体积是:{0}",box1.volume());
Box box2=new Box(15);
Console.WriteLine("长方形box2的体积是:{0}",box2.volume());
Box box3=new Box(15,30);
Console.WriteLine("长方形box3的体积是:{0}",box3.volume());
Box box4=new Box(15,30,20);
Console.WriteLine("长方形box4的体积是:{0}",box4.volume());
}
}
//62,析构函数
using System;
class Date
{
public Date(int y, int m, int d)
{
year = y;
month = m;
day = d;
Console.WriteLine("{0}:构造函数已被调用.", day);
}
~Date()
{
Console.WriteLine("{0}:析构函数已被调用", day);
}
public void print()
{
Console.WriteLine("{0}.{1}.{2}", year, month, day);
}
private int year;
private int month;
private int day;
}
class Program
{
static void Main()
{
Date today = new Date(2010, 9, 1);
Date tomorrow = new Date(2010, 9, 2);
Console.Write("今天是:");
today.print();
Console.Write("明天是:");
tomorrow.print( );
}
}
//63,用不同对象调用同一个函数成员输出学生的平均分示例
using System;
class Student
{
float score1;
float score2;
public Student(float s1, float s2)
{
score1 = s1;
score2 = s2;
}
public float ave()
{
float average;
average = (score1 + score2) / 2;
return average;
}
}
class Program
{
static void Main()
{
Student Zhang = new Student(89.0f, 94.5f);
Student Li = new Student(88.0f, 89.5f);
Student Wang = new Student(90.0f, 82.5f);
Console.WriteLine("张的平均成绩是:{0}", Zhang.ave( ));
Console.WriteLine("李的平均成绩是:{0}", Li.ave());
Console.WriteLine("王的平均成绩是:{0}", Wang.ave());
}
}
//64,使用多个对象处理有关学生类问题的示例
using System;
class Student
{
public Student(int n, int a, int s)
{
num=n;
age = a;
score = s;
}
public void print()
{
Console.WriteLine("num:{0}", num);
Console.WriteLine("age:{0}", age);
Console.WriteLine("score:{0}", score);
}
private int num, age, score;
}
class Program
{
static void Main()
{
Student stud1 = new Student(1001, 18, 87);
Student stud2 = new Student(1002, 19, 76);
Student stud3 = new Student(1003, 18, 72);
stud1.print();
stud2.print();
stud3.print();
}
}
//65.使用对象数组来处理学生类问题
using System;
class Student
{
public Student(int n, int a, int s)
{
num = n;
age = a;
score = s;
}
public void print()
{
Console.WriteLine("学号: {0}", num);
Console.WriteLine("年龄: {0}", age);
Console.WriteLine("成绩: {0}", score);
}
private int num, age, score;
}
class Program
{
static void Main( )
{
Student[] stud = new Student[3] { new Student(1001, 18, 87), new Student(1002, 19, 76), new Student(1003, 18, 72) };
for (int i = 0; i < stud.Length; i++)
{
stud[i].print();
}
}
}
<C#任务导引教程>练习七的更多相关文章
- Senparc.Weixin.MP SDK 微信公众平台开发教程(七):解决用户上下文(Session)问题
从这篇文章中我们已经了解了微信公众平台消息传递的方式,这种方式有一个先天的缺陷:不同用户的请求都来自同一个微信服务器,这使得常规的Session无法使用(始终面对同一个请求对象,况且还有对方服务器Co ...
- Docker入门教程(七)Docker API
Docker入门教程(七)Docker API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第七篇,重点介绍了Docker Registry API和 ...
- HMM 自学教程(七)前向后向算法
本系列文章摘自 52nlp(我爱自然语言处理: http://www.52nlp.cn/),原文链接在 HMM 学习最佳范例,这是针对 国外网站上一个 HMM 教程 的翻译,作者功底很深,翻译得很精彩 ...
- Ocelot简易教程(七)之配置文件数据库存储插件源码解析
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9852711.html 上篇文章给大家分享了如何集成我写的一个Ocelot扩展插件把Ocelot的配置存储 ...
- Java NIO系列教程(七) selector原理 Epoll版的Selector
目录: Reactor(反应堆)和Proactor(前摄器) <I/O模型之三:两种高性能 I/O 设计模式 Reactor 和 Proactor> <[转]第8章 前摄器(Proa ...
- iOS 11开发教程(七)编写第一个iOS11代码Hello,World
iOS 11开发教程(七)编写第一个iOS11代码Hello,World 代码就是用来实现某一特定的功能,而用计算机语言编写的命令序列的集合.现在就来通过代码在文本框中实现显示“Hello,World ...
- (转)微信公众平台开发教程(七)Session处理
原文地址:http://www.cnblogs.com/yank/p/3476874.html 微信公众平台开发教程(七)Session处理 在微信窗口,输入的信息有限,我们需要将一些信息分多次请求. ...
- Photoshop入门教程(七):蒙版
学习心得:蒙版在Photoshop中也是很常用的,学会使用蒙版,可以提高图像处理能力,并且可以保护原片不被破坏,建议多使用一些蒙版. 蒙板是灰度的,是将不同灰度色值转化为不同的透明度,并作用到它所在的 ...
- struts2官方 中文教程 系列七:消息资源文件
介绍 在本教程中,我们将探索使用Struts 2消息资源功能(也称为 resource bundles 资源绑定).消息资源提供了一种简单的方法,可以将文本放在一个视图页面中,通过应用程序,创建表单字 ...
随机推荐
- webstorm 修改端口号
webstorm 修改端口号: 至此,点击下方 [apply],端口号修改完成.
- Linux基础安全配置(centos7)
1.帐户口令的生存期不长于90天 sed -i.old 's#99999#90#g' /etc/login.defs egrep "90" /etc/login.defs 2.密码 ...
- 将Oracle数据库数据每天备份恢复一次数据到另一台服务器上两份数据
1.创建用户,授权,创建测试数据 创建用户 CREATE USER test identified by 123; 授权 grant dba to test; 创建测试数据 create table ...
- bzoj2038 小z的袜子 (莫队)
题目大意 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命-- 具体来说,小Z把这N只袜子从1到N编 ...
- java设计模式_工厂模式
关于设计模式 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经过分类的.代码设计经验的总结,是一种设计思维,使用设计模式的目的:为了代码可重用性.让代码更容易被他人理解.保证 ...
- 【数据结构】c语言实现集合的交并差运算
待改写:存储数据类型int-->char 重复的元素可存储 功能上不完善 #include <stdio.h> #include <stdlib.h> typedef s ...
- for...of 和 for...in 是否可以直接遍历对象,有什么解决方案
答案: for...of不能直接遍历对象,for in可以直接遍历对象 原因: for...of需要实现iterator接口,对象没有实现iterator接口 解决: const obj = {a: ...
- 【c++ Prime 学习笔记】第13章 拷贝控制
定义一个类时,可显式或隐式的指定在此类型对象上拷贝.移动.赋值.销毁时做什么.通过5种成员函数实现拷贝控制操作: 拷贝构造函数:用同类型的另一个对象初始化本对象时做什么(拷贝初始化) 拷贝赋值算符:将 ...
- Coursera Deep Learning笔记 改善深层神经网络:超参数调试 Batch归一化 Softmax
摘抄:https://xienaoban.github.io/posts/2106.html 1. 调试(Tuning) 超参数 取值 #学习速率:\(\alpha\) Momentum:\(\bet ...
- Java:死锁编码及定位分析
Java:死锁编码及定位分析 本笔记是根据bilibili上 尚硅谷 的课程 Java大厂面试题第二季 而做的笔记 概念 死锁是指两个或多个以上的进程在执行过程中,因争夺资源而造成一种互相等待的现象, ...