Bài thực hành tuần 8 Bài 1. Trong bài danh sách sinh viên trước đây(bài 4 tuần 5) hãy xây dựng thêm hàm sắp xếp các sinh viên theo tên trước rồi mới đến họ và tên đệm(theo như danh sách lớp thông thường). Lưu ý: Lần này danh sách sinh viên, họ tên sinh viên đều phải được cấp phát động. Trong cấu trúc sinh viên sẽ thêm trường con trỏ *next trỏ tới sinh viên tiếp theo. Bài 2. Nhập vào một xâu ký tự từ bàn phím. Thực hiện tất cả các yêu cầu sau: a) Chuẩn hóa xâu(Loại bỏ các dấu cách nằm ở đầu và cuối xâu; Loại bỏ các dấu cách thừa sao cho giữa các từ chỉ có đúng một dấu cách giữa các từ, viết hoa các chữ cái đầu từ và viết thường các chữ cái còn lại). b) Viết lại xâu theo thứ tự đảo ngược ký tự của các từ. VD : Input: nGuyen , van ; an Output a: Nguyen Van An Output b: An Van Nguyen Lưu ý: Xâu đầu vào phải được cấp phát động và sử dụng hàm strtok để tách từ. Bài 3. Nhập vào một ma trận từ bàn phím. Tìm và in ra màn hình ma trận nghịch đảo của ma trận ấy. Lưu ý: Ma trận ban đầu và ma trận nghịch đảo được cấp phát động hoàn toàn. Bài 4. Xây dựng cấu trúc dữ liệu kiểu Vector bao gồm: + Số chiều + Một mảng chứa các tọa độ của vector Hãy xây dựng các hàm sau: a) Tìm chuẩn của vector b) Cộng hai vector c) Nhân hai vector d) Nhập vào từ bàn phím một dãy gồm N vector. Hãy tìm các vector độc lập tuyến tính trong N vector. In ra kết quả. Lưu ý: Mảng chứa các tọa độ của vector, dãy N vector đều phải sử dụng cấp phát bộ nhớ động.