Elementary Programming with C - Lab 6: Mảng
A. Kiến thức
• Hiểu về khái niệm mảng
• Nắm vững cấu trúc của mảng trong C: mảng 1 chiều, mảng 2 chiều
• Cách thức thao tác trên mảng
B. Kỹ năng:
• Xây dựng chương trình có cấu trúc
• Gỡ lỗi chương trình
• Phân tích đưa ra giải thuật phù hợp cho bài toán
• Áp dụng mềm dẻo các cấu trúc đã học.
Elementary Programming with C 2011 Create By SinhNX Page 1 LAB 6: Mảng I- Chuẩn bị: A. Kiến thức • Hiểu về khái niệm mảng • Nắm vững cấu trúc của mảng trong C: mảng 1 chiều, mảng 2 chiều • Cách thức thao tác trên mảng B. Kỹ năng: • Xây dựng chương trình có cấu trúc • Gỡ lỗi chương trình • Phân tích đưa ra giải thuật phù hợp cho bài toán • Áp dụng mềm dẻo các cấu trúc đã học. II- Bài tập: A. Bài tập cơ bản 1. Vẽ lưu đồ và viết chương trình khai báo một mảng số nguyên có 10 phần tử, nhập dữ liệu cho mảng này và in ra các phần tử ở vị trí chẵn (0, 2, 4, …) 2. Vẽ lưu đồ và viết chương trình khai báo một mảng số nguyên (int) có 10 phần tử và một mảng số thực (float) có 5 phần tử. Nhập dữ liệu cho mảng số thực sau đó gán các phần tử của mảng số thực này cho các vị trí lẻ của mảng số nguyên (các phần tử còn lại bằng 0). Cuối cùng hiển thị hai mảng này ra màn hình. 3. Vẽ lưu đồ và viết chương trình khai bảo một mảng số nguyên gồm 10 phần tử, nhập dữ liệu cho mảng này rồi in ra màn hình giá trị lớn nhất, nhỏ nhất và số lần xuất hiện của chúng trong mảng. VD: int a[10] = {12, 8, 23, 8, 25, 8, 90, 21, 11, 90}; - Giá trị lớn nhất là 90, số lần xuất hiện 2. - Giá trị lớn nhất là 8, số lần xuất hiện 3. Elementary Programming with C 2011 Create By SinhNX Page 2 4. Vẽ lưu đồ và viết chương trình: Khai báo một mảng số nguyên có 5 phần tử, yêu cầu người dùng nhập vào từ bàn phím số nguyên tố, nếu không phải là số nguyên tố yêu cầu nhập lại. 5. Vẽ lưu đồ và viết chương trình khai báo một mảng số nguyên gồm 10 phần tử, lấy số ngẫu nhiên trong khoảng [0-100] gán cho các phần tử của mảng này. Sau đó nhập vào một số trong khoảng tử [0-100]. Hiển danh sách số ngẫu nhiên, kiểm tra số đó có nằm trong dãy số ngẫu nhiên vừa sinh ra hay không? vị trí xuất hiện đầu tiên của số nhập vào và số lần xuất hiện số này trong dãy số đó. Gợi ý: Sử dụng hàm srand() và rand() như sau: srand (time(NULL) ); int random = rand() % 10; // random sẽ nhận giá trị ngẫu nhiên từ 0 đến 9 Chú ý: sử dụng 2 thư viện và 6. Viết chương trình khai báo một mảng số nguyên gồm 20 phần tử để lưu trữ 20 phần tử đầu tiên của dãy số Fibonacci. B. Bài tập nâng cao 1. Với yêu cầu quản lý mảng số nguyên tố như bài số 5 ở trên tuy nhiên số phần tử tăng lên thành 20 và phần tử ngẫu nhiên của mảng phải là số nguyên tố nằm trong khoảng [0-200]. 2. Viết chương trình quản lý mảng ký tự gồm 10 phần tử. Nhập từ bàn phím các ký tự thuộc bảng chữ cái từ a-z, chuyển các phần tử trong mảng thành ký tự hoa(A-Z) và in kết quả ra màn hình. 3. Sử dụng mảng 2 chiều kích thước [10 x 10] để hiển thị tam giác Pascal có chiều cao 5: Trong tam giác Pascal phần tử 2 cạnh bên đều là 1, kể từ dòng thứ 3 trở đi phần tử thứ 2 của dòng này bằng tổng 2 phần tử thứ 1 và 2 của dòng trước. Tổng quát: a[i][j] = a[i-1][j-1] + a[i-1][j] với i>1, j>0 4. Để lưu trữ điểm 6 môn học kỳ 1 cho 5 học viên người ta sử dụng mảng 2 chiều gồm 5 dòng và cột. Hãy viết chương trình để nhập điểm cho 5 học viên đó, hiển thị điểm và điểm trung bình của mỗi học viên. VD:
File đính kèm:
- Elementary Programming with C - Lab 6 Mảng.pdf
- Code.rar
- Flowchart - lab 6.docx