Tải bản đầy đủ (.ppt) (70 trang)

Mẩu tin - Tập tin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.77 MB, 70 trang )

05/09/14

MẨU TIN – TẬP TIN

05/09/14
Nội Dung Trình Bày

Mẩu tin

Xử lý tập tin

Một số công cụ xây
dựng của Studio NET

05/09/14
Cấu trúc mẫu tin

Cho phép phối hợp các kiểu dữ liệu
cơ bản trong cùng 1 tổ chức dữ liệu
để thể hiện các đối tượng trong
thực tế

Ví dụ
Sinh viên : họ tên, ngày sinh, điểm TB
Hóa đơn : mã số HĐ, ngày ghi, danh
sách dòng hóa đơn, tổng tiền,

05/09/14
Tổ chức trong Pascal

Khai báo kiểu


Type <tên kiểu> = Record
<tên vùng tin 1>: <kiểu>;
…….
<tên vùng tin n> : <kiểu>;
End;

Khai báo biến
Var <tên biến> : <tên kiểu>;

05/09/14
Ví dụ

Type Ngay = Record
ngay, thang, nam:integer;
End;
HocSinh= Record
hoten:String;
ngaysinh : Ngay;
End;

Var a,b : Ngay ;
x,y : HocSinh;
list : Array[1 10] of HocSinh;

05/09/14
Tổ chức trong C

Khai báo kiểu
struct <tên kiểu>
{

<kiểu dữ liệu> <tên vùng 1>;
…………….
<kiểu dữ liệu> <tên vùng n>;
};

Khai báo biến
<tên kiểu> <tên biến>;

05/09/14
Ví Dụ
struct Ngay
{int ngay, thang, nam;};
struct HocSinh
{
char hoten[30];
Ngay ngaysinh;
};
Khai báo biến
Ngay a,b;
HocSinh x,y, list[10] ;

05/09/14

Cần phải viết các thủ tục/hàm để xử
lý các yêu cầu

Ví dụ
In lý lịch học sinh
Tính tuổi hiện tại
………


05/09/14
Cài đặt
Procedure InLyLich (A:HocSinh);
Begin
Writeln(“Ho ten : ” + A.HoTen);
Writeln(“Ngay Sinh : ” +
A.Ngay.Ngay+”/”+A.Ngay.Thang+”/”+A
.Ngay.Nam);
End;
Funtion TuoiHienTai(X:HocSinh):Integer;
Begin TuoiHienTai:= 2006 -
A.Ngay.Nam;
End;

05/09/14

Sử dụng
InLyLich(X);
For i:=1 to 10 do
InLyLich(List[i]);
Writeln(“Nam nay duoc “+TuoiHienTai(X)
+” tuoi “);
For i:=1 to 10 do
Writeln(List[i].Hoten,
TuoiHienTai(list[i]));

05/09/14
Ý tưởng của OOP


Các xử lý gắn liền với dữ liệu

Mã giả
Var X : HocSinh
X.InLyLich
X.TuoiHienTai
Var List : Array[1 10] of HocSinh
For i=1 to 10 do List[i].InLyLich

05/09/14
Khai báo cấu trúc trong C#

Cú pháp
public struct <tên cấu trúc>
{
public <kiểu dữ liệu> <tên vùng 1>;
public <kiểu dữ liệu> <tên vùng 2>;

public <kiểu dữ liệu> <tên vùng n>;
}

05/09/14
Ví dụ
struct HOCSINH
{
internal string ht;
internal int ns;
internal float[] diem;
}
Lưu ý :

- Nên dùng public
- Có thể dùng 1 trong các từ
:public,private,internal,private

05/09/14
Minh họa : ViDu4_1a.cs
using System;
namespace ConsoleApplication1
{
struct HOCSINH
{
internal string ht;
internal int ns;
internal float[ ] diem;
}

05/09/14
Minh họa : ViDu4_1a.cs
public class Vidu4_1a
{
public static void Main()
{
HOCSINH x ;
x.diem = new float[3];
Console.Write("Nhap ho ten : ");
x.ht=Console.ReadLine();
Console.Write("Nhap nam sinh : ");
x.ns=Int32.Parse(Console.ReadLine());
for (int i=0;i<x.diem.Length;i++)
{

Console.Write("Nhap diem mon thu {0} : ",i+1);
x.diem[i]=Single.Parse(Console.ReadLine());
}

05/09/14
Console.WriteLine("Ho Ten : {0}" ,x.ht);
Console.WriteLine("Nam Sinh : {0}",x.ns);
for (int i=0;i<x.diem.Length;i++)
Console.Write("{0} ",x.diem[i]);
} // Main
} // class
} //name space
Lưu ý :
Với vùng tin kiểu mảng : cần khởi tạo trước khi
sử dụng

05/09/14

05/09/14
Minh họa : ViDu4_1.cs

Trong ví dụ này ta sử dụng các phương
thức xem như các “hàm xử lý, các
chương trình con” truyền thống trong
các NNLT trước đây
using System;
namespace ConsoleApplication1
{
struct HOCSINH
{

internal string ht;
internal int ns;
internal float[ ] diem;
}

05/09/14
public class Vidu4_1
{
static void NhapDuLieu(ref HOCSINH hs)
{ hs.diem = new float[3];
Console.Write("Nhap ho ten : ");
hs.ht=Console.ReadLine();
Console.Write("Nhap nam sinh : ");
hs.ns=Int32.Parse(Console.ReadLine());
for (int i=0;i<hs.diem.Length;i++)
{
Console.Write("Nhap diem mon thu {0} : ",i+1);
hs.diem[i]=Single.Parse(Console.ReadLine());
}
} // NhapDuLieu

05/09/14
static void InDuLieu(ref HOCSINH hs)
{
Console.WriteLine("Ho Ten : {0}" ,hs.ht);
Console.WriteLine("Nam Sinh : {0}",hs.ns);
for (int i=0;i<hs.diem.Length;i++)
Console.Write("{0} ",hs.diem[i]);
}
public static void Main()

{
// Khởi tạo tương tự như 1 đối tượng
HOCSINH x = new HOCSINH ( ) ;
NhapDuLieu(ref x);
InDuLieu(ref x);
}
}
}

05/09/14
Minh họa : ViDu4_2.cs
public struct HOCSINH
{
public string ht;
public int ns;
public float[ ] diem;
}
public struct GV
{
public string ht;
public float bl;
}
public struct LOP
{
public GV gvcn;
public HOCSINH[ ] ds;
}

05/09/14
public class ViDu4_2

{ static LOP lop4a ;
public static void Main()
{
lop4a.gvcn.ht="Le Thi Kim Dung";
lop4a.ds= new HOCSINH[10];
lop4a.ds[0].ht="Tran Huy Hoang";
Console.WriteLine("{0}",lop4a.gvcn.ht);
Console.WriteLine("{0}",lop4a.ds[0].ht);
}
}
}

05/09/14

05/09/14
Minh họa : ViDu4_3.cs
public struct SACH
{
public string tuasach,tacgia;
public int namxb;
//tương tự như lớp : có hàm xây dựng
public SACH(string s1, string s2,int i)
{
tuasach=s1;
tacgia=s2;
namxb=i;
}
}

05/09/14

public class ViDu4_3
{
//Khai báo 1 mảng chứa sẵn dữ liệu
static SACH[ ] thuvien=new SACH[ ]
{
new SACH("Ba chang ngu lam","Dumas cha",2005),
new SACH("Tra Hoa Nu","Dumas con",2004),
new SACH("Cuon theo chieu gio","Mitchell",2003),
new SACH("Tinh yeu cuoc song","London",2000),
};
public static void Main( )
{
for(int i=0;i<thuvien.Length;i++)
Console.WriteLine("{0} {1}
{2}",thuvien[i].tuasach,thuvien[i].tacgia,thuvien[i].namxb);
}
}

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×