Bài tập phần File
Số trang: 4
Loại file: doc
Dung lượng: 42.00 KB
Lượt xem: 20
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tài liệu Bài tập phần File tập hợp gồm 10 phần bài tập về file và 6 bài tập về đồ họa, với các nội dung liên quan đến: viết chương trình nối hai tập tin văn bản, viết chương trình đọc tập tin của văn bản, viết chương trình thực hiện công việc quản lý sinh viên, viết chương trình copy file,... Đây là tài liệu tham khảo bổ ích dành cho sinh viên ngành CNTT.
Nội dung trích xuất từ tài liệu:
Bài tập phần FileBÀI TẬP PHẦN FILE 1. Viết chương trình nối hai tập tin văn bản: tập tin thứ hai được nối vào cuối tập tin thứ nhất. Hiển thị nội dung của tập tin sau khi nối ra màn hình. Tên hai tập tin được nhập từ bàn phím. 2. Viết chương trình đọc một tập tin văn bản, tên tập tin được nhập từ bàn phím, sau đó đếm số từ trong tập tin và hiển thị ra màn hình. 3. Viết chương trình đọc một tập tin văn bản, đếm số lần xuất hiện của một chuỗi (nếu có) trong tập tin và hiển thị ra màn hình. Chuỗi được nhập từ bàn phím. 4. Viết chương trình đọc một tập tin văn bản, đếm số ký tự trên mỗi dòng. Chương trình phải hiển thị số dòng, chiều dài của các dòng ngắn nhất và dài nhất trong tập tin, cũng như là số trung bình của các ký tự trên mỗi dòng. 5. Viết chương sao chép một tập tin văn bản thành một tập tin văn bản khác và mỗi dòng trong tập tin văn bản đích phải được đánh số phía bên trái. 6. Viết chương trình thực hiện công việc quản lý sinh viên. Giáo viên muốn theo dõi kết quả học tập của sinh viên thông qua mã số sinh viên, họ tiên, điểm thi của học kỳ 1, học kỳ 2, và điểm trung bình của các học kỳ. Giả sử, chỉ lưu trữ cho một môn học. Các yêu cầu khi truy xuất là: - Tạo một tập tin gồm 10 sinh viên. - Cập nhật, thay đổi dữ liệu của tập tin này. - Nhập vào tên môn học cho biết mã sinh viên, tên sinh viên có điểm cao nhất/thấp nhất của môn học đó. - Nhập vào tên sinh viên cho biết điểm môn học của học kỳ 1, học kỳ 2 và toàn năm. - Tìm kiếm, sắp xếp theo mã sinh viên, theo tên, theo điểm, theo môn học. - Kết quả được ghi lên màn hình và tập tin. 7. Viết chương trình copy file nguồn vào file đích, tên file do người sử dụng đưa vào. 8. Viết chương trình in ra n dòng cuối cùng của 1 file, n là số nguyên bất kỳ, tên file do người sử dụng đưa vào. 9. Viết chương trình in ra số thứ tự của dòng trên 2 file mà chúng khác nhau. 10. Cho một tập dữ liệu (file), phát hiện ra chỗ nào là comment ( tức là các kí tự đằng sau /* ) và phát phát hiện ra những dòng trắng ( những dòng không có kí tự nào cả ). Sau đó phải xoá comment và xoá những dòng trắng đi.BÀI TẬP ĐỒ HỌA 1. Vẽ mặt đồng hồ mặt kim 2. Vẽ đồ thị của hàm y=f(x) (f là hàm nào đó) 3. Nhập 3 đỉnh toạ độ và vẽ tam giác sau đó vẽ tam giác sau khi xoay 45 độ quanh 1 đỉnh bất kỳ và tịnh tiến trên 1 vector, các giá trị nhập từ bàn phím. 4. Xác định giao điểm 2 đoạn thẳng. 5. Minh hoạ vẽ bánh xe lăn. 6. Vẽ bàn cờ vua./#Bài 1 - Vẽ mặt đồng hồ kim#/#include #include #include #include /* he so doi tu do sang radian */#define RADS 0.017453293#define CIRCLE 200double xc, yc;int gio, phut, giay;void ve_kim_gio(int color){ double angle; setcolor(color); angle = ((double)360 * gio / 12 + (double)phut / 2 - 90.0) * RADS; moveto(xc - 20.0 * cos(angle), yc - 20.0 * sin(angle)); lineto(xc - 10.0 * cos(angle + M_PI / 2), yc - 10.0 * sin(angle + M_PI/2)); lineto(xc + 110.0 * cos(angle), yc + 110.0 * sin(angle)); lineto(xc + 10.0 * cos(angle + M_PI / 2), yc + 10.0 * sin(angle + M_PI/2)); lineto(xc - 20.0 * cos(angle), yc - 20.0 * sin(angle));}void ve_kim_phut(int color){ double angle; setcolor(color); angle = ((double)360 * phut / 60 + (double)giay / 10 - 90.0) * RADS; moveto(xc - 30.0 * cos(angle), yc - 30.0 * sin(angle)); lineto(xc - 8.0 * cos(angle + M_PI / 2), yc - 8.0 * sin(angle + M_PI/2)); lineto(xc + 140.0 * cos(angle), yc + 140.0 * sin(angle)); lineto(xc + 8.0 * cos(angle + M_PI / 2), yc + 8.0 * sin(angle + M_PI/2)); lineto(xc - 30.0 * cos(angle), yc - 30.0 * sin(angle));}void ve_kim_giay(int color){ double angle; setcolor(color); angle = ((double)360 * (giay - 3) / 60) * RADS; moveto(xc - 40.0 * cos(angle), yc - 40.0 * sin(angle)); lineto(xc + 150.0 * cos(angle), yc + 150.0 * sin(angle)); setfillstyle(SOLID_FILL, color); fillellipse(xc, yc, 3, 3);}void ve_mat_dong_ho(){ int i, j; setcolor(YELLOW); circle(xc, yc, CIRCLE); setlinestyle(SOLID_LINE, 0, 3); for (i=0; i delay(10); nosound(); ve_kim_giay(BLACK); ve_kim_phut(BLACK); ve_kim_gio(BLACK); giay++; if (giay >= 60) { giay %= 60; phut++; if (phut >= 60) { phut %= 60; gio++; if (gio >= 12) gio %= 12; } } } while (!kbhit());}void main(){ int gr_drive = DETECT, gr_mode; initgraph(&gr_drive, &gr_mode, ); xc = getmaxx() / 2; yc = getmaxy() / 2; run(); getch(); closegraph();} ...
Nội dung trích xuất từ tài liệu:
Bài tập phần FileBÀI TẬP PHẦN FILE 1. Viết chương trình nối hai tập tin văn bản: tập tin thứ hai được nối vào cuối tập tin thứ nhất. Hiển thị nội dung của tập tin sau khi nối ra màn hình. Tên hai tập tin được nhập từ bàn phím. 2. Viết chương trình đọc một tập tin văn bản, tên tập tin được nhập từ bàn phím, sau đó đếm số từ trong tập tin và hiển thị ra màn hình. 3. Viết chương trình đọc một tập tin văn bản, đếm số lần xuất hiện của một chuỗi (nếu có) trong tập tin và hiển thị ra màn hình. Chuỗi được nhập từ bàn phím. 4. Viết chương trình đọc một tập tin văn bản, đếm số ký tự trên mỗi dòng. Chương trình phải hiển thị số dòng, chiều dài của các dòng ngắn nhất và dài nhất trong tập tin, cũng như là số trung bình của các ký tự trên mỗi dòng. 5. Viết chương sao chép một tập tin văn bản thành một tập tin văn bản khác và mỗi dòng trong tập tin văn bản đích phải được đánh số phía bên trái. 6. Viết chương trình thực hiện công việc quản lý sinh viên. Giáo viên muốn theo dõi kết quả học tập của sinh viên thông qua mã số sinh viên, họ tiên, điểm thi của học kỳ 1, học kỳ 2, và điểm trung bình của các học kỳ. Giả sử, chỉ lưu trữ cho một môn học. Các yêu cầu khi truy xuất là: - Tạo một tập tin gồm 10 sinh viên. - Cập nhật, thay đổi dữ liệu của tập tin này. - Nhập vào tên môn học cho biết mã sinh viên, tên sinh viên có điểm cao nhất/thấp nhất của môn học đó. - Nhập vào tên sinh viên cho biết điểm môn học của học kỳ 1, học kỳ 2 và toàn năm. - Tìm kiếm, sắp xếp theo mã sinh viên, theo tên, theo điểm, theo môn học. - Kết quả được ghi lên màn hình và tập tin. 7. Viết chương trình copy file nguồn vào file đích, tên file do người sử dụng đưa vào. 8. Viết chương trình in ra n dòng cuối cùng của 1 file, n là số nguyên bất kỳ, tên file do người sử dụng đưa vào. 9. Viết chương trình in ra số thứ tự của dòng trên 2 file mà chúng khác nhau. 10. Cho một tập dữ liệu (file), phát hiện ra chỗ nào là comment ( tức là các kí tự đằng sau /* ) và phát phát hiện ra những dòng trắng ( những dòng không có kí tự nào cả ). Sau đó phải xoá comment và xoá những dòng trắng đi.BÀI TẬP ĐỒ HỌA 1. Vẽ mặt đồng hồ mặt kim 2. Vẽ đồ thị của hàm y=f(x) (f là hàm nào đó) 3. Nhập 3 đỉnh toạ độ và vẽ tam giác sau đó vẽ tam giác sau khi xoay 45 độ quanh 1 đỉnh bất kỳ và tịnh tiến trên 1 vector, các giá trị nhập từ bàn phím. 4. Xác định giao điểm 2 đoạn thẳng. 5. Minh hoạ vẽ bánh xe lăn. 6. Vẽ bàn cờ vua./#Bài 1 - Vẽ mặt đồng hồ kim#/#include #include #include #include /* he so doi tu do sang radian */#define RADS 0.017453293#define CIRCLE 200double xc, yc;int gio, phut, giay;void ve_kim_gio(int color){ double angle; setcolor(color); angle = ((double)360 * gio / 12 + (double)phut / 2 - 90.0) * RADS; moveto(xc - 20.0 * cos(angle), yc - 20.0 * sin(angle)); lineto(xc - 10.0 * cos(angle + M_PI / 2), yc - 10.0 * sin(angle + M_PI/2)); lineto(xc + 110.0 * cos(angle), yc + 110.0 * sin(angle)); lineto(xc + 10.0 * cos(angle + M_PI / 2), yc + 10.0 * sin(angle + M_PI/2)); lineto(xc - 20.0 * cos(angle), yc - 20.0 * sin(angle));}void ve_kim_phut(int color){ double angle; setcolor(color); angle = ((double)360 * phut / 60 + (double)giay / 10 - 90.0) * RADS; moveto(xc - 30.0 * cos(angle), yc - 30.0 * sin(angle)); lineto(xc - 8.0 * cos(angle + M_PI / 2), yc - 8.0 * sin(angle + M_PI/2)); lineto(xc + 140.0 * cos(angle), yc + 140.0 * sin(angle)); lineto(xc + 8.0 * cos(angle + M_PI / 2), yc + 8.0 * sin(angle + M_PI/2)); lineto(xc - 30.0 * cos(angle), yc - 30.0 * sin(angle));}void ve_kim_giay(int color){ double angle; setcolor(color); angle = ((double)360 * (giay - 3) / 60) * RADS; moveto(xc - 40.0 * cos(angle), yc - 40.0 * sin(angle)); lineto(xc + 150.0 * cos(angle), yc + 150.0 * sin(angle)); setfillstyle(SOLID_FILL, color); fillellipse(xc, yc, 3, 3);}void ve_mat_dong_ho(){ int i, j; setcolor(YELLOW); circle(xc, yc, CIRCLE); setlinestyle(SOLID_LINE, 0, 3); for (i=0; i delay(10); nosound(); ve_kim_giay(BLACK); ve_kim_phut(BLACK); ve_kim_gio(BLACK); giay++; if (giay >= 60) { giay %= 60; phut++; if (phut >= 60) { phut %= 60; gio++; if (gio >= 12) gio %= 12; } } } while (!kbhit());}void main(){ int gr_drive = DETECT, gr_mode; initgraph(&gr_drive, &gr_mode, ); xc = getmaxx() / 2; yc = getmaxy() / 2; run(); getch(); closegraph();} ...
Tìm kiếm theo từ khóa liên quan:
Bài tập phần file Học lập trình C Ngôn ngữ lập trình C Bài tập phần đồ họa Bài tập ngôn ngữ lập trình C Lập trình CTài liệu liên quan:
-
101 trang 205 1 0
-
Tìm hiểu về ngôn ngữ lập trình C: Phần 1 - Quách Tuấn Ngọc
211 trang 151 0 0 -
161 trang 134 1 0
-
Hướng dẫn thực hành lập trình C trên Visual Studio
9 trang 130 0 0 -
Giáo trình Kỹ thuật lập trình C: Căn bản & nâng cao - Phần 1
202 trang 128 0 0 -
Giáo trình Vi điều khiển PIC: Phần 1
119 trang 126 0 0 -
Bài giảng Phương pháp lập trình: Chương 9 - GV. Từ Thị Xuân Hiền
36 trang 115 0 0 -
Giáo trình Ngôn ngữ lập trình C căn bản
142 trang 101 0 0 -
Đồ án vi xử lý đề tài : nghiên cứu thiết kế mạch đo khoảng cách sử dụng vi điều khiển Pic 16F887
45 trang 101 1 0 -
Program C Ansi Programming Embedded Systems in C and C++ phần 4
12 trang 99 0 0