Bài tập C# có lời giải
Học lập trình C#
Bài này cung cấp cho bạn danh sách các bài tập Csharp có lời giải ở các cấp độ khác nhau để bạn thực hành khi học ngôn ngữ lập trình Csharp:
Nội dung chính
- Bài tập C# kinh điển
- Bài tập C# cơ bản
- Bài tập quản lý sinh viên trong C/C++
Bài tập C# kinh điển
- Dãy số Fibonacci
- Check Số nguyên tố
- Tính giai thừa
- Chuyển đổi hệ cơ số
Bài 01: Viết một chương trình C# in ra dãy số Fibonacci
Gợi ý:
- Sử dụng đệ quy
- Không sử dụng đệ quy
Code mẫu: In dãy số Fibonacci trong C không sử dụng đệ quy.
using System; using System.Collections; namespace VietTutsCsharp { class Program { static void Main(string[] args) { int i; Console.Write("10 so dau tien cua day so Fibonacci: "); for (i = 0; i < 10; i++) { Console.Write("{0} ", fibonacci(i)); } Console.WriteLine(); Console.ReadKey(); } /** * Tinh so Fibonacci thu n * * @param n: chi so cua so Fibonacci tinh tu 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 * @return So Fibonacci thu n */ static int fibonacci(int n) { int f0 = 0; int f1 = 1; int fn = 1; int i; if (n < 0) { return -1; } else if (n == 0 || n == 1) { return n; } else { for (i = 2; i < n; i++) { f0 = f1; f1 = fn; fn = f0 + f1; } } return fn; } } }
Kết quả:
10 so dau tien cua day so Fibonacci: 0 1 1 2 3 5 8 13 21 34
Bài 02: Viết một chương tình C kiểm tra số nguyên tố.
Code mẫu:
using System; using System.Collections; namespace VietTutsCsharp { class Program { static void Main(string[] args) { int i; Console.Write("Cac so nguyen to nho hon 100 la: "); for (i = 0; i < 100; i++) { if (isPrimeNumber(i)) { Console.Write("{0} ", i); } } Console.WriteLine(); Console.ReadKey(); } /** * check so nguyen to trong C * * @author viettuts.vn * @param n: so nguyen duong * @return 1 la so nguyen so, * 0 khong la so nguyen to */ static Boolean isPrimeNumber(int n) { // so nguyen n < 2 khong phai la so nguyen to if (n < 2) { return false; } // check so nguyen to khi n >= 2 int squareRoot = (int)Math.Sqrt(n); int i; for (i = 2; i <= squareRoot; i++) { if (n % i == 0) { return false; } } return true; } } }
Kết quả:
Cac so nguyen to nho hon 100 la: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
Bài 03: Viết một chương trình C# tính giai thừa của một số bằng cách không sử dụng đệ quy và có sử dụng đệ quy.
Gợi ý:
- Sử dụng đệ quy
- Không sử dụng đệ quy
Code mẫu: Tính giai thừa trong C không sử dụng đệ quy.
using System; using System.Collections; namespace VietTutsCsharp { class Program { static void Main(string[] args) { int a = 5; int b = 0; int c = 10; Console.Write("Giai thua cua {0} la: {1} ", a, tinhGiaithua(a)); Console.Write("Giai thua cua {0} la: {1} ", b, tinhGiaithua(b)); Console.Write("Giai thua cua {0} la: {1} ", c, tinhGiaithua(c)); Console.WriteLine(); Console.ReadKey(); } /** * tinh giai thua * * @author viettuts.vn * @param n: so nguyen duong * @return giai thua cua so n */ static long tinhGiaithua(int n) { int i; long giai_thua = 1; if (n == 0 || n == 1) { return giai_thua; } else { for (i = 2; i <= n; i++) { giai_thua *= i; } return giai_thua; } } } }
Kết quả:
Giai thua cua 5 la: 120 Giai thua cua 0 la: 1 Giai thua cua 10 la: 3628800
Bài 04: Viết một chương trình C# để chuyển đổi số nguyên N sang hệ cơ số B (2