<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 资源绑定).消息资源提供了一种简单的方法,可以将文本放在一个视图页面中,通过应用程序,创建表单字 ...
随机推荐
- 屏幕截图小工具的制作过程问题记录 python PIL pynput pyautogui pyscreeze
最近想做一个脚本小工具,方便写一些操作说明文档,它的功能很简单,就是把脚本打开之后,鼠标进行操作点击时,会在点击后进行截图,并在图上标记出点击的位置,有点类似于录屏软件的图片版,这样的话,如果要想用文 ...
- 【图像处理】基于OpenCV实现图像直方图的原理
背景 图像的直方图是衡量图像像素分布的一种方式,可以通过分析像素分布,使用直方图均衡化对图像进行优化,让图像变的清晰. opencv官方对图像直方图的定义如下: 直方图是图像中像素强度分布的图形表达方 ...
- 阿里云函数计算发布新功能,支持容器镜像,加速应用 Serverless 进程
我们先通过一段视频来看看函数计算和容器相结合后,在视频转码场景下的优秀表现.点击观看视频 >> FaaS 的门槛 Serverless 形态的云服务帮助开发者承担了大量复杂的扩缩容.运维. ...
- docker中Jenkins启动无法安装插件,版本过低
一.问题现象: 使用docker启动jenkins,在jenkins启动后却无法安装jenkins的插件,一直提示安装失败且从log看到提示信息显示为需要升级jenkins的版本 二.原因分析: 在使 ...
- CORS+XSS的漏洞利用payload
之前有人问我有没有CORS+XSS的利用姿势,翻了一下国内貌似都没有利用姿势于是就写了这篇文章!!! 首先找到一个反射xss,然后使用xss加载javascript代码达到跨域劫持目的payload如 ...
- 整理一下在 npmjs.com 上面发布资源包踩过的坑
正常流程就不说了,网上有很多,比如写代码.打包.注册.登录.发布等. 邮箱要激活 在 npmjs.com 上面注册账号的时候需要填写邮箱,然后登录网址的时候并没有强制要求你去邮箱激活. 但是到了发布资 ...
- SLAM名词介绍
gauge freedom:测量自由度 degrees-of-freedom(DoF) 自由度 wide-baseline matches:宽基线匹配 宽基线匹配:从描绘同一场景的两个或多个图像中建立 ...
- Java:多线程计数
Java:多线程计数 本笔记是根据bilibili上 尚硅谷 的课程 Java大厂面试题第二季 而做的笔记 1. CountDownLatch 概念 让一些线程阻塞直到另一些线程完成一系列操作才被唤醒 ...
- abstract使用方式
springMVC中的 LocalContextHolder是一个 abstract类.里边方法都是static 的. 不能被继承.不能实例化.只能调用其定义的static 方法.这种 abstrac ...
- spring security中ajax超时处理
spring security为我们的系统提供了方便的认证和授权操作.在系统中完成认证和授权后,一般页面页面上大多数是ajax和后台进行操作,那么这个时候可能就会面临session超时,ajax去访问 ...