c语言例子 c语言 C#例子16-20

导读:爱华网网友为您分享以下“C#例子16-20”资讯,希望对您有所帮助,感谢您对aIhUaU.com的支持!

例子16:

using System;

using System.IO;

public class FileApp

{

public static void Main()

{

// 在当前目录创建一个文件myfile.txt,对该文件具有读写权限

c语言例子 c语言 C#例子16-20

FileStream fsMyfile = new FileStream("myfile.txt" , FileMode.Create, FileAccess.ReadWrite);

// 创建一个数据流写入器,和打开的文件关联

StreamWriter swMyfile = new StreamWriter(fsMyfile);

// 以文本方式写一个文件

swMyfile.WriteLine("Hello, World");

swMyfile.WriteLine("abcdefghijklmnopqrstuvwxyz");

swMyfile.WriteLine("ABCDEFGHIJKLMNOPQRSTUVWXYZ");

swMyfile.WriteLine("0123456789");

// 冲刷数据(把数据真正写到文件中去)

// 注释该句试试看,程序将报错

swMyfile.Flush();

// 以文本方式读文件

// 创建一个数据流读入器,和打开的文件关联

StreamReader srMyfile= new StreamReader(fsMyfile);

// 把文件指针重新定位到文件的开始

srMyfile.BaseStream.Seek(0, SeekOrigin.Begin);

// 打印提示信息

Console.WriteLine("****************以文本方式读文件*********************");

// 打印文件文本内容

string s1;

while((s1 = srMyfile.ReadLine())!=null)

{

Console.WriteLine(s1);

}

Console.WriteLine();

// 以文本方式读文件结束

// 以二进制方式读文件

// 创建一个二进制数据流读入器,和打开的文件关联

BinaryReader brMyfile= new BinaryReader (fsMyfile);

// 把文件指针重新定位到文件的开始

brMyfile.BaseStream.Seek(0, SeekOrigin.Begin);

// 打印提示信息

Console.WriteLine("****************以二进制方式读文件*********************");

// 打印文件文本内容

Byte b1;

while(brMyfile.PeekChar()>-1)

{

b1=brMyfile.ReadByte();

// 13为"n",表示回车;10为"r",表示换行

if(b1 != 13 && b1 != 10)

{

Console.Write("{0}",b1.ToString());

Console.Write(".");

}

else

{

Console.WriteLine();

}

}

Console.WriteLine("n");

// 以二进制方式读文件结束

// 关闭以上new的各个对象

brMyfile.Close();

swMyfile.Close();

srMyfile.Close();

fsMyfile.Close();

// 读取文件属性

// 打印提示信息

Console.WriteLine("****************读取文件属性*********************"); FileInfo fiMyfile=new FileInfo("myfile.txt");

Console.WriteLine("文件名 : {0}",fiMyfile.Name); Console.WriteLine("文件名(含路径) : {0}",fiMyfile.FullName); Console.WriteLine("文件大小(bytes) : {0}",fiMyfile.Length);

Console.WriteLine("文件创建时间 : {0}",fiMyfile.CreationTime); }

}

例子17:

using System;

using System.IO;

public class Person

{

// 枚举类型,用于表示性别。为节省内存,使用byte。

public enum Sex : byte

{

Male = 0, Female

}

// 私有属性:姓名,性别,年龄,身高,体重

private string name;

private Sex sex;

private byte age;

private float height;

private float weight;

// 构造函数,只用一个属性:姓名

public Person(string sName)

{

name = sName;

}

// 构造函数2,支持两个属性:姓名,性别 public Person(string sName, Sex cSex) {

name = sName;

sex = cSex;

}

// 设置年龄

public void setAge(byte bAge)

{

age = bAge;

}

// 设置性别,参数为枚举类型Sex public void setSex(Sex cSex)

{

sex = cSex;

}

// 重载设置性别的方法,参数为byte public void setSex(byte bSex)

{

sex = (Sex)bSex;

}

// 设置身高

public void setHeight(float fHeight) {

height = fHeight;

}

// 设置体重

public void setWeight(float fWeight)

{

weight = fWeight; }

// 得到姓名

public string getName() {

return name; }

// 得到年龄

public byte getAge() {

return age; }

// 得到性别

public Sex getSex() {

return sex; }

// 得到身高

public float getHeight() {

return height; }

// 得到体重

public float getWeight() {

return weight; }

}

public class MyClass {

public static void Main()

{

// 实例化一个人,设置各项属性 Person p1 = new Person("李娟"); p1.setSex((byte)1);

p1.setAge(19);

p1.setHeight((float)1.68);

p1.setWeight(45);

// 实例化另一个人,设置各项属性 Person p2 = new Person("张建国", 0); p2.setAge(25);

p2.setHeight((float)1.75);

p2.setWeight(74);

// 打印出两人的属性

Console.WriteLine("{0}t{1}t{2}t{3}t{4}", p1.getHeight(), p1.getWeight());

Console.WriteLine("{0}t{1}t{2}t{3}t{4}", p2.getHeight(), p2.getWeight());

}

}

例子18:

using System;

class Rectangle

{

private int iHeight;

private int iWidth;

// 缺省构造函数

public Rectangle()

{

Height=0;

Width=0;

} p1.getName(), p2.getName(), p1.getSex(), p2.getSex(), p1.getAge(), p2.getAge(),

// 构造函数重载

public Rectangle(int w,int h) {

Width=w;

Height=h;

}

// 属性:宽 的get和set访问器 public int Width

{

get

{

return iWidth;

}

set

{

iWidth=value;

}

}

// 属性:高 的get和set访问器 public int Height

{

get

{

return iHeight; }

set

{

iHeight=value; }

}

// 属性:面积 的get访问器 public int Area

{

get

{

return Height*Width;

}

}

// 重载操作符 ==

public static bool operator==(Rectangle a,Rectangle b) {

return ((a.Height==b.Height)&&(a.Width==b.Width)); }

// 重载操作符 !=

public static bool operator!=(Rectangle a,Rectangle b) {

return !(a==b);

}

// 重载操作符 >

public static bool operator>(Rectangle a,Rectangle b) {

return a.Area>b.Area;

}

// 重载操作符 <

public static bool operator<(Rectangle a,Rectangle b) {

return !(a>b);

}

// 重载操作符 >=

public static bool operator>=(Rectangle a,Rectangle b) {

return (a>b)||(a==b);

}

// 重载操作符 <=

public static bool operator<=(Rectangle a,Rectangle b) {

return (a<b)||(a==b);

}

// 重载ToString

public override String ToString()

{

return "高=" + Height + ",宽=" + Width;

}

public static void Main()

{

// 实例化三个矩形并设置各自属性

Rectangle objRect1 =new Rectangle();

Rectangle objRect2 =new Rectangle();

Rectangle objRect3 =new Rectangle(10,15); objRect1.Height=15;

objRect1.Width=10;

objRect2.Height=25;

objRect2.Width=10;

// 打印三个矩形的信息

// 其中调用了ToString方法

Console.WriteLine("矩形#1 " + objRect1);

Console.WriteLine("矩形#2 " + objRect2);

Console.WriteLine("矩形#3 " + objRect3);

// 使用重载后的操作符比较矩形并打印结果 if(objRect1==objRect2)

{

Console.WriteLine("矩形#1和矩形#2高和宽都相等"); }

else

{

if(objRect1>objRect2)

{

Console.WriteLine("矩形1大于矩形2");

}

else

{

Console.WriteLine("矩形1小于矩形2"); }

}

if(objRect1==objRect3)

{

Console.WriteLine("矩形1和矩形3高和宽都相等"); }

else

{

Console.WriteLine("矩形1和矩形3不相等"); }

}

}

例子19:

// Stack名字空间

namespace Stack

{

using System;

public class Stack

{

// first: 栈最上面一个节点

private Node first = null;

// count: 栈中节点的数量

private int count = 0;

// 判空属性,提供get访问器

public bool Empty

{

get

{

return (first == null);

}

}

// 计数属性,提供get访问器

public int Count

{

get

{

return count;

}

}

// 压栈操作,注意返回object

public object Pop()

{

if (first == null)

{

throw new InvalidOperationException ("Cant pop from an empty stack"); }

else

{

object temp = first.Value;

first = first.Next;

count--;

return temp;

}

}

// 弹栈操作,返回空

public void Push(object o)

{

first = new Node(o, first);

count++;

}

// 节点类

class Node

{

// 节点有两个属性:自己、指向下一个节点

public Node Next;

public object Value;

public Node(object value) : this(value, null) {}

public Node(object value, Node next)

{

Next = next;

Value = value;

}

}

}

class StackApp

{

static void Main()

{

Stack s = new Stack();

if (s.Empty)

Console.WriteLine("堆栈为空");

else

Console.WriteLine("堆栈非空");

// 往栈中压入5个节点

for (int i = 0; i < 5; i++)

  

爱华网本文地址 » http://www.aihuau.com/a/390351/306714243325.html

更多阅读

怎么样提高作文语言表达能力? 快速提高语言表达能力

我的语言表达能力很差,特别是作文.我的作文很希望有朝一日能写好.能够投搞.举个例子:有一次我的作文有一句话我写,我站在桥上看火车,有一个写作文很好的同学帮我修改成 "远眺铁道口驶来的列车."我想问一下,为什么同样是表达一件事,

转 C语言中DEFINE简介及多行宏定义 c语言宏定义函数

要写好C语言,漂亮的宏定义是非常重要的。宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。  在软件开发过程中,经常有一些常用或者通用的功能或者代码段,这些功能既可以写成函数,也可以封装成为宏定义。那么究竟是用函数好

单片机C语言编程例子_Jan 单片机高效c语言编程

导航:前言. 2基础知识:单片机编程基础. 2第一节:单数码管按键显示. 4第二节:双数码管可调秒表. 6第三节:十字路口交通灯. 6第四节:数码管驱动. 7第五节:键盘驱动. 8第六节:低频频率计. 14第七节:电子表. 17第八节:串行口应用. 17

"语言文字规范化"手抄报资料 语言文字规范化培训

一、什么是汉民族共同语?民族共同语是民族内部通用的语言,是一个独立民族的主要标志之一。汉民族共同语的产生年代还不能说得很确切,最晚在上古的夏商周和春秋时期就产生了。当时的民族共同语叫"雅言",主要流行于黄河流域,《诗经》的语

声明:《c语言例子 c语言 C#例子16-20》为网友虚拟世界分享!如侵犯到您的合法权益请联系我们删除