Ai giúp mình giải những bài tập cơ bản này với

[h=2]ai giúp mình giải những bài tập cơ bản này với[/h]
mình học cntt nhưng rất gà.. bây h mình thi lại môn ngôn ngữ lập trình c này.. mình biết trong đề thi sẽ ra những câu này nhưng mà mình không biết làm như thế nào cả.. vậy bạn nào biết thì có thể giúp mình giải được không
TỔNG HỢP ĐỀ THI NGÔN NGỮ LẬP TRÌNH BẬC CAO

PHẦN 1: CHUỖI
Câu 1 :
a. Viết chương trình nhập vào một chuỗi st, in ra màn hình chuỗi st sau khi thay thế các ký tự trắng bằng các ký tự gạch dưới ( _ ).
Đầu vào là chuỗi: “Truong Dai Hoc Khoa Hoc”
Đầu ra là chuỗi: “Truong_Dai_Hoc_Khoa_Hoc”
b. Viết hàm nhận đầu vào là một chuỗi chứa ngày sinh của một người (có dạng dd/mm/yyyy), kết quả trả về của hàm là giá trị ngày trong ngày sinh của người đó.
Ví dụ: Đầu vào của hàm là chuỗi: “11/12/2000”
Kết quả trả về của hàm là: 11
Bài 2
Viết chương trình nhập vào một chuỗi ký tự st và một ký tự c bất kỳ, sau đó in ra màn hình số lượng ký tự c xuất hiện trong chuỗi st (không phân biệt chữ hoa hay chữ thường).

Bài 3
a, Viết hàm nhận đầu vào là chuỗi chứa tên một tập tin. Kết quả trả về của hàm là phần mở rộng của tập tin đó (tên tập tin gồm 2 phần: phần chính và phần mở rộng được phân cách nhau bằng dấu chấm).
b, Áp dụng hàm trên, viết chương trình nhập vào danh sách tên của n tập tin (n<=50), sau đó in ra màn hình những tập tin có phần mở rộng là jpg.
Câu 4
a) Viết hàm nhận đầu vào là chuỗi chứa họ tên của một người. Kết quả trả về của hàm là tên của người đó (giả sử chuỗi chứa họ tên của một người ở đầu vào đã được chuẩn hóa theo dạng: giữa các từ có duy nhất một ký tự trắng, không có ký tự trắng ở đầu và cuối chuỗi). Ví dụ: Đầu vào của hàm là chuỗi: “Lê Thị Uyên Phương” Kết quả trả về của hàm là chuỗi: “Phương”
b) Áp dụng hàm trên: viết chương trình nhập vào danh sách họ tên của n (n<=50) sinh viên, in ra màn hình những sinh viên có tên là “Anh”.
Câu 5
a. Xây dựng hàm để đếm số từ trong một chuỗi, biết chuỗi chỉ gồm các ký tự thường và khoảng trắng (có thể có nhiều khoảng trắng thừa). Ví dụ: với đầu vào là chuỗi “ con co be be” thì hàm sẽ trả về 4.
b. Xây dựng hàm nhận một chuỗi là họ tên của một người làm đối số sau đó trả về một chuỗi là tên của người này. Biết chuỗi họ tên ở đầu vào luôn chứa tối thiểu hai từ và có thể có nhiều khoảng trắng thừa. Ví dụ, với đầu vào là chuỗi “ nguyen thi
mai ” thì hàm sẽ trả về chuỗi “mai”.
PHẦN 2: CẤU TRÚC-FILE
Câu 1 (4 điểm): Để quản các cuộc gọi điện thoại nội mạng (gọi là các cuộc gọi) người ta quản lý các thông tin sau: số máy thực hiện cuộc gọi, số máy nhận cuộc gọi, thời gian thực hiện cuộc gọi (tính bằng giây), thời điểm thực hiện cuộc gọi (thời điểm thực hiện cuộc gọi có hai loại là giờ thấp điểm và giờ cao điểm, giá trị 1 ứng với giờ thấp điểm, giá trị 0 ứng với giờ cao điểm). Hãy khai báo mảng cấu trúc để lưu thông tin của các cuộc gọi và viết chương trình thực hiện các công việc sau:
V-a. Nhập vào thông tin của n (n  100) cuộc gọi với điều kiện không có cuộc gọi nào có số máy thực hiện cuộc gọi trùng với số máy nhận cuộc gọi.
V-b. In ra màn hình thông tin của những cuộc gọi có thời gian gọi lớn hơn m phút với giá trị m nhập vào từ bàn phím. Thông tin của mỗi cuộc gọi in trên một dòng theo thứ tự: số máy thực hiện cuộc gọi, số máy nhận cuộc gọi, thời gian thực hiện cuộc gọi, thời điểm thực hiện cuộc gọi (giờ thấp điểm/giờ cao điểm).
V-c. In ra màn hình thông tin của các cuộc gọi có số tiền cao nhất. Biết rằng, 6 giây đầu tiên có đơn giá là 800 đồng/6 giây (nếu gọi chưa đủ 6 giây thì làm tròn số tiền đến 6 giây thực hiện cuộc gọi), các giây tiếp theo có đơn giá 100 đồng/giây. Ngoài ra trong giờ thấp điểm thì đơn giá sẽ được giảm 10%.
d. Lưu thông tin của các cuộc gọi trong giờ thấp điểm vào tập tin CALL1.DAT và các cuộc gọi trong giờ cao điểm vào tập tin CALL2.DAT.

Bài 2.
Một đoạn thẳng trong hệ tọa độ Oxy được biểu diễn bởi hai tọa độ (xa, ya), (xb, yb). Xây dựng cấu trúc để lưu trữ thông tin của đoạn thẳng theo yêu cầu đã cho ở trên, sau đó viết các hàm thực hiện các công việc sau:
a. Nhập vào thông tin của n đoạn thẳng (n<50) vào một mảng lưu các đoạn thẳng.
b. In ra màn hình thông tin của các đoạn thẳng có độ dài lớn hơn một giá trị d, với mảng đoạn thẳng và d là tham số đầu vào của hàm.
c. Lưu các đoạn thẳng cắt trục trung tại điểm có tung độ dương vào tập tin có cấu trúc tên là TUNGDO.txt.

Câu 3
Để quản lý thông tin của các nhân viên trong một cơ quan nào đó, người ta sử dụng cấu trúc sau: struct nhanvien { char manv[20], hoten[50], dvi[30]; float hsl; }; Viết các hàm thực hiện các công việc sau:
a. Nhập vào một số nguyên dương n (n<=50) và thông tin của n nhân viên.
b. In ra màn hình thông tin của các nhân viên bao gồm: họ tên, lương (lương = hsl*830000).
c. Thống kê số lượng các nhân viên có trong đơn vị sdonvi (sdonvi là tham số đầu vào biểu diễn đơn vị x).
d. Lưu vào file văn bản “luong.cpp” các nhân viên có hệ số lương .0, thông tin mỗi cán bộ trên 1 dòng.
Câu 4 (4 điểm): Để quản lý các học phần trong một trường đại học, người ta quản lý các thông tin: mã học phần, tên học phần, s ố tín chỉ, loại học phần (có hai loại học phần: tự nhiên và xã hội. Nếu là học phần dành cho khối tự nhiên thì dữ liệu của trường này là “TN”, nếu là học phần dành cho khối xã hội thì dữ liệu của trường này là “XH”).
a. Nhập vào thông tin của n (n  200) học phần với điều kiện không có hai học phần nào trùng mã với nhau.
b. In ra màn hình thông tin của những học phần có đơn giá lớn hơn g với g là giá trị nhập vào từ bàn phím. Biết rằng đơn giá của học phần tính theo công thức: số tín chỉ * 120000 * hệ số đơn giá (nếu là học phần tự nhiên thì hệ số đơn giá là 1.5, nếu là học phần xã hội thì hệ số đơn giá là 1.0). Thông tin của mỗi học phần in trên một dòng theo thứ tự: mã học phần, tên học phần, số tín chỉ, loại học phần (tự nhiên/xã hội), đơn giá học phần.
c. In ra màn hình thông tin của các học phần có mã học phần bắt đầu bởi chuỗi ký tự “TIN” và có số tín chỉ nhỏ hơn 3.
d. Lưu thông tin của các học phần tự nhiên vào tập tin TUNHIEN.DAT và các học phần xã hội vào tập tin XAHOI.DAT.

PHẦN 3: DSLK-FILE
Câu 1 (4 điểm): Xây dựng cấu trúc một danh sách liên kết đơn chứa các số thực, sau đó viết chương trình thực hiện các công việc sau đây:
V=a. Nhập vào một danh sách các số thực được quản lý bởi con trỏ F. Quá trình nhập dừng lại khi nhập vào số 0.
V=b. Nhập vào từ bàn phím hai số thực x, y (x < y). Tính tổng của các phần tử có giá trị lớn hơn x và nhỏ hơn y có trong danh sách được quản lý bởi con trỏ F.
V=c. Xóa các phần tử có giá trị âm ra khỏi danh sách được quản lý bởi con trỏ F.
V=d. Lưu các số nguyên có trong danh sách được quản lý bởi con trỏ F vào tập tin văn bản SONGUYEN.TXT, mỗi số cách nhau ít nhất một khoảng trống.

Bài 2. (3.5 điểm) Để quản lý khách ở trong các phòng của một khách sạn, người ta quản lý các thông tin sau: ký hiệu phòng, họ tên khách, đơn giá, số ngày. Xây dựng cấu trúc danh sách liên kết động để lưu trữ thông tin đã cho trên, sau đó viết các hàm thực hiện các công việc sau:
a. Nhập thông tin của các khách hàng vào danh sách liên kết, quá trình nhập dừng lại khi nhập vào ký hiệu phòng bằng rỗng.
b. In ra màn hình thông tin của các khách hàng có số tiền phải trả lớn hơn một giá trị g. Thông tin của mỗi khách hàng in trên một dòng.
c. In ra màn hình những khách hàng có số tiền phải trả lớn nhất. Thông tin của mỗi khách hàng in trên một dòng.
d. Lưu thông tin của các khách hàng ở phòng có ký hiệu phòng là khp vào tập tin văn bản tên là PHONG.TXT, với khp là một chuỗi dữ liệu đầu vào của hàm

Câu 3 (4.5đ) Thông tin mỗi cuốn sách cần quản lý trong thư viện bao gồm: mã sách, tên sách, họ tên tác giả, năm xuất bản. Viết chương trình quản lý sách bao gồm các công việc sau:
a. Nhập thông tin của các cuốn sách vào một danh sách liên kết. Quá trình nhập dừng khi mã sách là một chuỗi rỗng.
b. In ra màn hình số lượng sách mới có trong danh sách (sách mới là sách có năm xuất bản sau năm 2006).
c. Nhập vào thông tin của một cuốn sách, sau đó chèn vào danh sách trên (giả sử danh sách đã được sắp xếp theo năm xuất bản tăng dần). d. Lưu thông tin của tất cả các quyển sách của tác giả QUACH TUAN NGOC vào file nhị phân LUUTRU.cpp.

Câu 4 (4 điểm): Xây dựng cấu trúc một danh sách liên kết đơn chứa các số nguyên dương, sau đó viết chương trình thực hiện các công việc sau đây:
V-a. Nhập vào một danh sách các số nguyên dương được quản lý bởi con trỏ F, quá trình nhập dừng lại khi nhập vào số 0.
V-b. Nhập vào từ bàn phím một số nguyên dương x. Tính tích của các phần tử có giá trị chia hết cho x trong danh sách được quản lý bởi con trỏ F.
c. Sắp xếp các phần tử trong danh sách được quản lý bởi con trỏ F theo thứ tự tăng dần của giá trị các phần tử.
d. Lưu các số chính phương trong danh sách được quản lý bởi con trỏ F vào tập tin văn bản CP.TXT, mỗi số cách nhau ít nhất một khoảng trống.​
 

Forever Alone

Em là cô gái nông thôn
Cái này bạn phải tự làm, rồi lỗi hoặc bí gì thì hỏi, chứ dài thế này, đâu ai có nhiều thời gian mà ngồi code được :rage3:
 

Thống kê

Chủ đề
102,079
Bài viết
469,631
Thành viên
340,362
Thành viên mới nhất
mai phuongmai 123
Top