Font size
WorksheetslaptrinhC#
Total questions: 96
Worksheet time: 48mins
cú pháp in ra màn hình trong C# là
print()
echo()
System.console()
Console.WriteLine()
Lệnh nhập dữ liệu từ bàn phím
scanf()
input()
Console.ReadLine()
cin
Kiểu dữ liệu số nguyên trong C#
float
double
string
int
Kiểu dữ liệu ký tự là:
text
string
char
byte
Kiểu dữ liệu chuỗi:
char
Text
string
var
Câu lệnh kết thúc bằng:
:
,
;
/
Để ép kiểu chuỗi sang int dùng:
Convert.ToString()
int.Try()
string.ToInt()
Convert.ToInt32()
Toán tử gán:
:=
!=
=
*=
Toán tử so sánh bằng:
≈
!=
=
==
Toán tử logic AND:
||
!
&
&&
Toán tử logic OR
&&
not
&
||
Toán tử phủ định
++
~
!
!=
Cú pháp khai báo hàm
void a{}
function a()
a() {}
func a()
Từ khóa chỉ lớp
object
struct
method
class
Tạo đối tượng từ class:
new.class
class()
object.create
newClassName()
Khối điều kiện:
if ( ) then
if {}
when()
if ( )
Câu lệnh chọn lựa nhiều nhánh:
if-else
goto
try
switch
Vòng lặp đếm:
while
do
foreach
for
Vòng lặp không biết trước số lần lặp:
for
do
while
loop
vòng lặp chạy ít nhất 1 lần
for
while
do-while
foreach
Từ khóa kế thừa trong C#:
extends
inherits
:
super
Từ khóa chỉ class cha:
this
super
base
root
Interface khai báo bằng:
abstract
interface
class
struct
File C# có phần mở rộng
.csx
.csharp
.csproj
.cs
Toán tử null-coalescing:
?:
?=
?:?
??
Toán tử truy cập an toàn null
!?
?
?:
?.
Từ khóa dùng trong try-catch-finally
except
throwex
finally
error
Từ khóa ném lỗi:
except
error
try
throw
Toán tử cộng chuỗi:
add()
join()
+...
&
Trong C#, mảng khai báo bằng
array
list
int[]
int()
Phương thức Main có dạng:
main:
void main()
static void Main()
public void Main()
Cú pháp namespace:
package {}
folder {}
namespace Name {}
space {}
Kiểu logic trong C#:
boolean
bit
bool
bolean
Từ khóa readonly dùng cho:
Phương thức
Biến chỉ gán 1 lần
Class
Interface
Từ khóa const dùng cho
Biến có thể đổi
Biến không đổi
Hàm
Class
Dấu comment 1 dòng trong C#
/* */
<!-- -->
//
#comment
Từ khóa tạo thuộc tính tự động
var
getset
{ get; set; }
auto
Giá trị trả về của Console.ReadLine() là
int
bool
char
string
int.Parse() khác Convert.ToInt32() ở chỗ:
Không dùng được
Trả về float
int.Parse() lỗi khi null
Convert nhanh hơn
Vòng foreach dùng để
Xóa phần tử
Tăng tốc độ
Duyệt collection
Tạo mảngmới
Từ khóa this dùng để:
Gọi lớp cha
Gọi lớp con
Thamchiếu đến đối tượng hiện tại
Thamchiếu biến tĩnh
base dùng để:
Truy cập biến tĩnh
Thay đổi class cha
Tới phương thức class cha
Tạo đối tượng mới
Abstract class là:
Class hoàn chỉnh
Không có phương thức
Class không tạo đối tượng
Class luôn static
Interface khác abstract ở chỗ:
Có constructor
Không có code triển khai
Chứa biến static
Không có phương thức
override dùng để
Ẩn biến
Tạo biến
Kế thừa phương thức cha và thay đổi nội dung
Tạo lớp con
sealed dùng để:
Ngăn tạo object
Ngăn tạo biến
Ngăn kế thừa
Ngăn override
try-catch dùng để:
Tối ưu RAM
Tăng tốc độ
Bắt ngoại lệ
Tạo class
finally dùng để:
Chạy khi lỗi
Không bao giờ chạy
Giải phóng bộ nhớ khi chạy đúng
Luôn chạy
Toán tử is dùng để:
So sánh số
So sánh chuỗi
Ép kiểu
Kiểm tra kiểu
Toán tử as dùng để:
Quy đổi số
So sánh kiểu
Tạo cast an toàn
Xóa object
string là:
mutable
immutable
trống
dynamic
List khác Array ở điểm:
Không khác
List cố định
Array cố định kích thước
static method là
Hàm của object
Hàm ẩn
Hàm thuộc class
Hàm abstract
new dùng để
Gọi hàm
nối chuỗi
Khởi tạo object
Chạy vòng lặp
struct khác class vì:
Lớn hơn
Dễdùnghơn
Là value type
Không có phương thức
int? nghĩa là
Biến toàn cục
Biến static
Biến nullable
Biến interface
NullReferenceException xảy ra khi:
Ép chuỗi
Sử dụng object null
Dùng số âm
Tạo class
Hàm có thể overload khi:
Tên khác
Class khác
Tham số khác
Kiểu trả về khác
Method override cần:
static
new
private
virtual
Biến trong static class phải là:
instance
public
static
struct
GC trong C# nghĩa là:
Ghi chú
Gỡ lỗi
Tự động thu hồi bộ nhớ
Tạo class
string.Concat(a,b) tương đương:
a-b
a*b
a +b
a/b
event dùng để:
Tạo namespace
Tạo hàm
Tạo sự kiện
Xóa object
delegate dùng để:
Quản lý file
Tăng hiệu suất
Trỏ đến hàm
Tạo class
boxing là:
Ép int string
string int
value type object
object int
unboxing là:
string object
object string
object value type
int char
string s="abc"; Console.WriteLine(s[1])
a
b
c
lỗi
int x=5; Console.WriteLine(x>3);
False
0
lỗi
True
int x=0; while(x<3) x++;
1
2
3
0
int a=3,b=2; Console.WriteLine(a/b);
1.5
1
0
2
int a=5; Console.WriteLine(a==5?10:0);
5
0
10
1
List
1
2
3
Lỗi
int[] a={1,2,3}; Console.WriteLine(a.Length);
2
4
0
3
string s="hi"; s+= "!!!";
hi
hi!!!
h!!!
Lỗi
int? x=null; Console.WriteLine(x??5);
null
0
Lỗi
5
int x=int.Parse("10")+1;
9
10
11
Lỗi
try{int x=1/0;} catch{}
Lỗi
Không lỗi
Crash
Không chạy
Console.WriteLine("5"+2);
7
52
Lỗi
5
bool x = "a" is string;
False
0
True
Lỗi
object o="hello"; string s=o as string;
lỗi
0
null
hello
int x=3; Console.WriteLine(++x);
2
3
4
5
int x=3; Console.WriteLine(x++);
3
4
2
lỗi
int x=5; Console.WriteLine(x>=5 && x<10);
False
0
True
Lỗi
int[] a=new int[3]; Console.WriteLine(a[1]);
1
2
3
0
for(int i=0;i<3;i++) Console.Write(i);
3
31
012
123
int x=2; Console.WriteLine(Math.Pow(x,3));
4
6
7
8
int x=1; for(int i=0;i<3;i++) x+=i;
1
2
3
4
string s="abcd"; Console.WriteLine(s.Substring(1,2));
a
dc
cd
bc
List< int > L=new(){1,2,3}; L.Add(4);
[1,2,3]
[2,3,4]
[1,2,3,4]
Lỗi
int x=5; if(x>1 && x<10) Console.Write("A");
""
A
B
Lỗi
double x=3/2;
1.5
1
2
0
object o=5; int x=(int)o+1;
5
6
Lỗi
try{throw new Exception();}catch{Console.Write(1);}finally{Console.Write(2);}
1
2
12
21
string s=null; Console.WriteLine(s?.Length);
Lỗi
0
null
" "
int x=0; do{x++;}while(x<3);
1
2
3
4
int[] a={1,2,3}; Console.WriteLine(a[0]+a[2]);
1
2
4
5
