Bài 1. Hàm Sum cho N số nguyên
1. Viết một hàm tên là Sum nhận vào một số nguyên N và trả lại tổng các số từ 1 đến N thông qua return value
2. Hàm main sẽ đọc vào một số và sau đó gọi hàm Sum để tính tổng theo số đó, sau đó hiển thị kết quả lên màn hình
3. Viết một hàm tên là MaxMin nhận vào 3 tham số kiểu int. Tính max, min. Trả lại max cho hàm gọi thông qua return value, trả lại min cho hàm gọi thông qua tham số thứ 3
4. Hàm main sẽ nhập vào 3 số nguyên và gọi hàm MaxMin để tính toán và lấy về kết quả, sau đó hiển thị ra màn hình
Bài 2. Chương trình dạng menu:
Dạng bài như đề mẫu của ITT2003, trong đó xây dựng các hàm như sau:
1. Hàm in menu ra màn hinh
2. Hàm input nhận 2 tham số truyền theo kiểu pass by reference, và nhập giá trị vào 2 tham số đó
3. Hàm USCLN nhận vào 2 tham số A, B kiểu pass by value. Tìm USCLN của 2 số đó rồi trả lại cho hàm main thông qua việc return value. Kết quả náy phải được hiển thị bằng câu lệnh viết trong hàm main
4. Hàm rectangle nhận vào 2 tham số A, B kiểu pass by value. Sau đó hiển thị hình chữ nhật với A dòng và B cột
Hàm main sẽ goi hàm in menu để hiển thị menu, rồi yêu cầu người dùng chọn 1 số. sau đó tuy thuộc vào số đươc chọn sẽ gọi hàm tương ứng để tính toán và hiện kết quả
Bài 3. Các bài toán cơ bản:
Viết lại thành dạng hàm số các tính toán sau:
1. int power(int a, int b); //Hàm này trả về số một nguyên a mũ b
2. int factorial(int n); //Hàm này trả về giai thừa của n
3. int isPrime(int n); //Hàm này trả về 1 nếu n là số nguyên tố và trả về 0 nếu n không phải là số nguyên tố
4. int isSquare(int n); //Hàm này trả về 1 nếu n là số chính phương, trả về 0 nếu n không phải là số chính phương
5. int isPerfect(int n); //Hàm này trả về 1 nếu n là số hoàn hảo, trả về 0 nếu n không phải là số hoàn hảo
6. int isEven(int n); //Hàm này trả về I nếu n là số chẵn và trả về 0 nếu n là số lẻ
3 trang |
Chia sẻ: maiphuongtl | Lượt xem: 3208 | Lượt tải: 2
Bạn đang xem nội dung tài liệu Tổng hợp Bài tập C, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Thuật toán, lưu đồ, mã giả
Kiểu dữ liệu, biến, toán tử
Điều kiện
Lặp, lặp lồng nhau
Mảng
Con trỏ
Hàm
Chú ý:
Tất cả các hàm sau khi viết xong, viết thêm hàm main để thử. Có thể nhóm một số bài cùng loại (vd: tính toán cơ bản, mảng, chuỗi, vẽ,…) trong chương này vào 1 file mã nguồn (1 chương trình).
Hàm Sum cho N số nguyên
Viết một hàm tên là Sum nhận vào một số nguyên N và trả lại tổng các số từ 1 đến N thông qua return value
Hàm main sẽ đọc vào một số và sau đó gọi hàm Sum để tính tổng theo số đó, sau đó hiển thị kết quả lên màn hình
Viết một hàm tên là MaxMin nhận vào 3 tham số kiểu int. Tính max, min. Trả lại max cho hàm gọi thông qua return value, trả lại min cho hàm gọi thông qua tham số thứ 3
Hàm main sẽ nhập vào 3 số nguyên và gọi hàm MaxMin để tính toán và lấy về kết quả, sau đó hiển thị ra màn hình
Chương trình dạng menu:
Dạng bài như đề mẫu của ITT2003, trong đó xây dựng các hàm như sau:
Hàm in menu ra màn hinh
Hàm input nhận 2 tham số truyền theo kiểu pass by reference, và nhập giá trị vào 2 tham số đó
Hàm USCLN nhận vào 2 tham số A, B kiểu pass by value. Tìm USCLN của 2 số đó rồi trả lại cho hàm main thông qua việc return value. Kết quả náy phải được hiển thị bằng câu lệnh viết trong hàm main
Hàm rectangle nhận vào 2 tham số A, B kiểu pass by value. Sau đó hiển thị hình chữ nhật với A dòng và B cột
Hàm main sẽ goi hàm in menu để hiển thị menu, rồi yêu cầu người dùng chọn 1 số. sau đó tuy thuộc vào số đươc chọn sẽ gọi hàm tương ứng để tính toán và hiện kết quả
Các bài toán cơ bản:
Viết lại thành dạng hàm số các tính toán sau:
int power(int a, int b); //Hàm này trả về số một nguyên a mũ b
int factorial(int n); //Hàm này trả về giai thừa của n
int isPrime(int n); //Hàm này trả về 1 nếu n là số nguyên tố và trả về 0 nếu n không phải là số nguyên tố
int isSquare(int n); //Hàm này trả về 1 nếu n là số chính phương, trả về 0 nếu n không phải là số chính phương
int isPerfect(int n); //Hàm này trả về 1 nếu n là số hoàn hảo, trả về 0 nếu n không phải là số hoàn hảo
int isEven(int n); //Hàm này trả về I nếu n là số chẵn và trả về 0 nếu n là số lẻ
Vẽ tam giác số:
Viết hàm nhận vào một số nguyên n dương lớn hơn 0 và nhở hơn 10 vẽ tam giác co chiều cao n dòng như sau:
Giả sử n=5, hiển thị như sau
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
Hiển thị tổng số các số chẵn trong hình vừa viết ra
Hiển thị tổng số các số nguyên tố
Hiển thị tổng số các số chính phương
Tính tổng của cột đầu tiên
Tính tổng dòng cuối cùng
Gợi ý: sử dụng các hàm cơ bản đã tạo ở bài một để chưong trình trở nên đơn giản hơn.
Xử lý mảng:
Viết hàm làm các công việc dưới đây, viết hàm main() nhập mảng và gọi đến các hàm này. In ra mảng trước và sau khi thao tác.
Hàm nhận vào mảng số nguyên, sau đó đảo mảng.
Hàm nhận vào mảng kí tự, sau đó đảo mảng.
Hàm nhận vào mảng số nguyên, kiểm tra mảng đó có đối xứng hay không
Hàm nhận vào mảng kí tự, kiểm tra mảng đó có đối xứng hay không
Hàm nhận vào mảng số nguyên, sắp xếp mảng đó theo thứ tự tăng dần
Hàm nhận vào n chuỗi (tên người), sắp xếp các chuỗi theo thứ tự alphabet
Chuỗi
Đảo chuỗi
Tìm tất cả vị trí của kí tự/chuỗi con trong chuỗi cha
Viết hàm kiểm tra xem chuỗi s1 có chứa/bắt đầu/kết thúc bằng chuỗi s2?
Kiểm tra chuỗi đối xứng?
Kiểm tra s2 có phải là đảo của s1
Sắp xếp các chuỗi theo thứ tự tăng/giảm dần theo alphabet, độ dài
Viết hàm đổi chuỗi ra chữ hoa/thường/sentence
Struct và sắp xếp (bubble & insertion sort)
Khai báo cấu trúc ngaythang với 3 thành phần ngay, thang, nam.
Khai báo struct hocsinh với các thành phần sau:
Tên: dài tối đa 30 kí tự (kể cả ‘\0’)
Ngày sinh: kiểu cấu trúc ngaythang đã khai báo ở trên
Điểm toán, lý, hóa (thang điểm 10)
Nhập vào 3 hocsinh (tất cả các chi tiết).
In ra 3 hocsinh đó theo dạng tất cả các cột thẳng hàng với nhau, mỗi dòng biểu diễn chi tiết của 1 hocsinh bao gồm: STT, Tên, Ngày sinh, Toán, Lý, Hóa, TB (trung bình)
VD:
STT Ten Ngay sinh Toan Ly Hoa TB
1 Nguyen Van A 1-1-1981 8.0 7.5 8.5 8.0
…
Sắp xếp và in ra danh sách trên theo thứ tự:
Tăng dần theo tên
Giảm dần theo điểm TB
Tăng dần theo ngày tháng năm sinh
Tìm kiếm:
Mời người dùng nhập vào 1 chuỗi, tìm và in ra tất cả học sinh có tên chứa chuỗi đó.
VD: “an” là xuất hiện trong các chuỗi “Nguyễn Văn Anh”, “Trần Thị Tú An”, “Lê Anh Minh” chẳng hạn
Viết lại các phần vừa rồi thành chương trình có menu, các yêu cầu được viết thành hàm
File
Đọc file text, đếm số kí tự, từ, đoạn/dòng, câu, khoảng trắng/tab/xuống dòng.
Nhập tên file1, file2. Sao chép, xóa (tập tin nhị phân)
Nhập tên file1, file2, nối file (text)