Bài tập lớn Tin học đại cương
lượt xem 80
download
Input: Danh sách 1 lớp gồm 45 sinh viên gồm: họ tên, ngày tháng năm sinh và điểm thi học kỳ 3 môn Toán, Lý, Hóa. Output: Thông tin về mỗi sinh viên gồm: họ tên, ngày tháng năm sinh và điểm thi học kỳ 3 môn Toán, Lý, Hóa, điểm trung bình, xếp loại của học sinh đó và danh sách tất cả sinh viên trước và sau khi sắp xếp theo điểm trung bình tăng dần.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài tập lớn Tin học đại cương
- Bài tập lớn THĐC 10CLC MỤC LỤC MỤC LỤC.....................................................................................................1 BÁO CÁO BÀI TẬP LỚN..........................................................................2 Phần :ITHUẬT TOÁN:..........................................................................................2 .I.1Xác định bài toán:...................................................................................................................2 .I.2Ý tưởng:..................................................................................................................................2 .I.3Sơ đồ khối:.............................................................................................................................3 Phần :IICHƯƠNG TRÌNH:..................................................................................4 .II.1Nội dung chương trình:.........................................................................................................4 .II.2Ví dụ:.....................................................................................................................................9 Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 1
- Bài tập lớn THĐC 10CLC BÁO CÁO BÀI TẬP LỚN Phần :I THUẬT TOÁN: .I.1 Xác định bài toán: .I.1.a Input: Danh sách 1 lớp gồm 45 sinh viên gồm: họ tên, ngày tháng năm sinh và điểm thi học kỳ 3 môn Toán, Lý, Hóa. .I.1.b Output: Thông tin về mỗi sinh viên gồm: họ tên, ngày tháng năm sinh và điểm thi học kỳ 3 môn Toán, Lý, Hóa, điểm trung bình, xếp loại của học sinh đó và danh sách tất cả sinh viên trước và sau khi sắp xếp theo điểm trung bình tăng dần. .I.2 Ý tưởng: Do các dữ liệu để lưu trữ thông tin cho mỗi sinh viên như: họ tên, ngày tháng năm sinh và điểm thi học kỳ 3 môn Toán, Lý, Hóa, điểm trung bình, hay xếp loại của học sinh đó, có các kiểu khác nhau nhưng liên kết với nhau để chứa dựng thông tin của mỗi sinh viên nên ta dùng kiểu cấu trúc để lưu thông tin cho sinh viên. Do số sinh viên phải luôn lớn hơn hoặc bằng 1 nên nếu nhập vào số sinh viên bé hơn 1 ta sẽ báo sai và cho nhập lại. Do ngày sinh phải nằm trong khoảng [1;31] nên nếu nhập vào ngày sinh nằm ngoài khoảng đó ta sẽ báo sai và cho nhập lại. Do tháng sinh phải nằm trong khoảng [1;12] nên nếu nhập vào tháng sinh nằm ngoài khoảng đó ta sẽ báo sai và cho nhập lại. Do sinh viên nên năm sinh chỉ có thể nằm trong khoảng [1900;2010] nên nếu nhập vào năm sinh nằm ngoài khoảng đó ta sẽ báo sai và cho nhập lại. Do điểm Toán, Lý, Hóa của sinh viên phải luôn lớn hơn hoặc bằng 0 và nhỏ hơn hoặc bằng 10 nên nếu nhập điểm Toán, Lý, Hóa của sinh viên bé hơn 0 hoặc lớn hơn 10 ta sẽ báo sai và cho nhập lại. Lấy điểm trung bình 3 môn cộng lại chia 3 ta được điểm trung bình. Sinh viên được xếp loại dựa vào điểm trung bình theo các tiêu chí sau: Xuất sắc: 9.0 > điểm trung bình Giỏi: 8.9 > điểm trung bình > 8.0 7.9 > điểm trung bình > 6.5 Khá: 6.4 > điểm trung bình > 5.0 Trung bình: Yếu: 4.9 > điểm trung bình > 3.5 điểm trung bình > 3.4 Kém: Dựa vào điểm trung bình và sử dụng thuật toán sắp xếp lựa chọn ta tạo được danh sách sinh viên theo điểm trung bình tăng dần. Nhưng nếu số sinh viên nhập vào chỉ là 1 thì ta không cần thực hiện bước này. Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 2
- Bài tập lớn THĐC 10CLC .I.3 Sơ đồ khối: Begin Nhập N và sv[1], sv[2], ……….,sv[N] i=0 i= 8.0 sv[i].diemtb >= 6.5 Khá sv[i].diemtb >= 5.0 Trung bình Yếu sv[i].diemtb >= 3.5 Kém i = i +1 i=0 In ra thông tin về các sinh viên i
- Bài tập lớn THĐC 10CLC Phần :II CHƯƠNG TRÌNH: Nội dung chương trình: .II.1 #include #include #include typedef struct ngaythang { int ngay,thang; unsigned int nam; }; typedef struct sinhvien { char hoten[40], xeploai[20]; ngaythang ngaysinh; float toan, ly, hoa, diemtb; }; void nhap(sinhvien sv[50],int n); void xuat(sinhvien sv[50],int n); void trungbinh(sinhvien sv[50],int n); void xeploai(sinhvien sv[50], int n); void hoanvi(sinhvien &a, sinhvien &b); void sapxep(sinhvien sv[50], int n); main() { sinhvien sv[50]; int i,n; sosinhvien: printf("\n Nhap vao so sinh vien: "); scanf("%d",&n); if (n
- Bài tập lớn THĐC 10CLC nhap(sv,n); trungbinh(sv,n); xeploai(sv,n); xuat(sv,n); if (n>1) { printf("\n ***************************************\n"); printf("\n Danh sach sinh vien truoc khi sap xep : "); for (i=0; i
- Bài tập lớn THĐC 10CLC printf("\n = Nhap NAM sai roi! ="); printf("\n = Nhap lai: ="); printf("\n ===========================\n"); goto ngaysinh; } diemToan: printf("\n Nhap diem thi Toan [0;10] : "); scanf("%f",&sv[i].toan); if ((sv[i].toan >10) || (sv[i].toan 10) || (sv[i].ly 10) || (sv[i].hoa
- Bài tập lớn THĐC 10CLC { printf("\n Ho va ten sinh vien : %s",sv[i].hoten); printf("\n Ngay sinh : %d/%d/ %d",sv[i].ngaysinh.ngay,sv[i].ngaysinh.thang,sv[i].ngaysinh.nam); printf("\n Diem Toan : %3.1f",sv[i].toan); printf("\n Diem Ly : %3.1f",sv[i].ly); printf("\n Diem Hoa : %3.1f",sv[i].hoa); printf("\n Diem Trung binh : %3.1f",sv[i].diemtb); printf("\n Dat loai : %s",sv[i].xeploai); printf("\n"); } } void trungbinh(sinhvien sv[50],int n) { for (int i=0; i= 8.0) strcpy(sv[i].xeploai,"GIOI"); else if (sv[i].diemtb >= 6.5) strcpy(sv[i].xeploai,"KHA"); else if (sv[i].diemtb >=5.0) strcpy(sv[i].xeploai,"TRUNG BINH"); else if (sv[i].diemtb >=3.5) strcpy(sv[i].xeploai,"YEU"); else strcpy(sv[i].xeploai,"KEM"); } } void hoanvi(sinhvien &a, sinhvien &b) { sinhvien tam; tam = a; Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 7
- Bài tập lớn THĐC 10CLC a = b; b = tam; } void sapxep(sinhvien sv[50], int n) { int i,j; for(i=0; i
- Bài tập lớn THĐC 10CLC Ví dụ: .II.2 Nhập vào đúng: .II.2.a Hình 2: Dữ liệu nhập vào. Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 9
- Bài tập lớn THĐC 10CLC Xuất ra: .II.2.b Hình 3: Dữ liệu xuất ra. Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 10
- Bài tập lớn THĐC 10CLC Báo lỗi: .II.2.c Hình 4: Lỗi nhập số sinh viên sai. Hình 5: Lỗi nhập ngày, tháng, năm sinh sai. Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 11
- Bài tập lớn THĐC 10CLC Hình 6: Lỗi nhập điểm sai. Không thực hiện bước sắp xếp: .II.2.d Hình 7: Không thực hiện sắp xếp nếu số sinh viên nhập vào là 1. Trường ĐH Bách khoa Đà Nẵng ΘΘΘ Trang 12
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng: Kiến trúc TCP/IP
50 p | 565 | 275
-
Bài tập Tin học Đại cương part 5
17 p | 273 | 88
-
Môn học/Môđun: Tin học đại cương (Bài tập lớn số 01)
2 p | 236 | 38
-
Kiến thức cơ bản về hệ thống thông tin
16 p | 232 | 26
-
Môn học/Môđun: Tin học đại cương (Bài tập lớn số 02)
2 p | 194 | 19
-
Khắc phục các vấn đề của Remote Access Service
6 p | 99 | 9
-
Bài giảng Bảo mật hệ thống thông tin: Chương 0 - ĐH Bách khoa TP HCM
9 p | 158 | 7
-
BÀI TẬP TIN HỌC ĐẠI CƯƠNG - PHẦN VIII
8 p | 82 | 6
-
Kỹ thuật làm chữ hoa đầu dòng (Drop cap)
5 p | 78 | 5
-
Thuộc tính về .NET
15 p | 66 | 4
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn