Khoa công nghệ thông tin bài giảng LẬp trình cơ BẢn biên soạn


IV. Tóm tắt nội dung bài học



tải về 1.56 Mb.
trang14/29
Chuyển đổi dữ liệu30.08.2016
Kích1.56 Mb.
#28834
1   ...   10   11   12   13   14   15   16   17   ...   29

IV. Tóm tắt nội dung bài học


I. Mảng

1. Mảng trong C

2. Mảng một chiều

3. Mảng nhiều chiều

II. Con trỏ

1. Khai báo và sử dụng biến con trỏ

2. Con trỏ và mảng

3. Con trỏ và tham số hình thức của hàm

III. Xâu ký tự

1. Khai báo

2. Các thao tác trên chuỗi ký tự

V. Bài tập


Xem Bài 7 - Bài tập thực hành Mảng, Con trỏ và Xâu ký tự

Bài 7 - Bài thực hành: MẢNG, CON TRỎ VÀ XÂU KÝ TỰ

I. Thực hiện các ví dụ sau

1. Tìm phần tử lớn nhất của mảng


Yêu cầu: Viết chương trình cho phép nhập vào một mảng, tìm phần tử lớn nhất và in ra màn hình

Soạn thảo văn bản chương trình như sau:

#include

#include

int main()

{

int b[20], N;



int i, ln;

printf("So phan tu thuc te cua mang N= ");

scanf("%d",&N);

for(i=0; i< N; i++)

{

printf("Phan tu thu %d: ",i);scanf("%d",&b[i]);



}

ln = b[0];

for(i=1; i< N; i++)

{

if (b[i]>ln)



{

ln=b[i];

}

}

printf("Gia tri lon nhat la: %d", ln);



getch();

return 0;

}

Thử nghiệm 1:


  1. Nhận F9 để chạy chương trình, khi đó giao diện xuất hiện như sau:



  1. Nhập các giá trị cho N (số phần tử của mảng) và các giá trị tương ứng cho mỗi phần tử của mảng như sau: 4  8  5  9  1 , khi đó kết quả nhận được như sau:



  1. Nhận xét về kết quả đạt được.

Thử nghiệm 2: Đổi việc tìm phần tử lớn nhất thành phần tử nhỏ nhất.

Thử nghiệm 3: Thêm vào yêu cầu là tìm phần tử lớn nhất và vị trí của phần tử đó trong mảng.

2. Lấy Tên từ họ tên người Việt


Yêu cầu: Giả sử Họ tên người Việt luôn có dạng “Họ Đệm Tên”, trong đó các phần Họ, Đệm, Tên luôn cách nhau 1 dấu cách; phần Đệm có thể có hoặc không hoặc có nhiều hơn 1 từ. Hãy viết chương trình cho phép nhập vào hoten, rồi in ra phần Tên.

Soạn thảo văn bản chương trình như sau

#include

#include

#include

int main()

{

char Chuoi[255],s[255];



int n,i,k;

printf("Nhap chuoi: ");

gets(Chuoi);

n=strlen(Chuoi);

for (i=n-1;i>-1;i--)

{

if (Chuoi[i]==32)



{

k=i;


break;

}

}



printf("ket qua\n");

strncpy(s,Chuoi+k+1,n-k-1);

puts(s);

getch();

return 0;

}

Thử nghiệm 1:



  1. Nhấn F9 chạy thử chương trình, khi đó giao diện xuất hiện như hình sau:



  1. Nhập giá trị cho chuỗi là Hoang Duc Van , khi đó kết quả nhận được như sau:



  1. Nhận xét về kết quả đạt được.

Thử nghiệm 2: Chạy và nhập chuỗi vào là “Hoang Duc Van ” (có chứa 2 dấu cách ở cuối), nhận xét về kết quả đạt được.

Thử nghiệm 3: Chạy và nhập chuỗi vào là “HoangDucVan” (không có dấu cách), nhận xét về kết quả đạt được.

II. Bài tập tự làm

1. Mảng


  1. Viết chương trình nhập vào một dãy n số thực a[0], a[1],..., a[n-1], sắp xếp dãy số theo thứ tự giảm dần. In dãy số sau khi sắp xếp.

  2. Viết chương trình sắp xếp một mảng theo thứ tự tăng dần sau khi đã loại bỏ các phần tử trùng nhau.

  3. Viết chương trình nhập vào một mảng, hãy xuất ra màn hình:

- Phần tử lớn nhất của mảng.

- Phần tử nhỏ nhất của mảng.

- Tính tổng của các phần tử trong mảng .


  1. Viết chương trình nhập vào một dãy các số theo thứ tự tăng, nếu nhập sai quy cách thì yêu cầu nhập lại. In dãy số sau khi đã nhập xong. Nhập thêm một số mới và chèn số đó vào dãy đã có sao cho dãy vẫn đảm bảo thứ tự tăng. In lại dãy số để kiểm tra.

  2. Viết chương trình nhập vào một ma trận (mảng hai chiều) các số nguyên, gồm m hàng, n cột. In ma trận đó lên màn hình. Nhập một số nguyên khác vào và xét xem có phần tử nào của ma trận trùng với số này không ? Ở vị trí nào ? Có bao nhiêu phần tử ?

  3. Viết chương trình để chuyển đổi vị trí từ dòng thành cột của một ma trận (ma trận chuyển vị) vuông 4 hàng 4 cột. Sau đó viết cho ma trận tổng quát cấp m*n.

  4. Viết chương trình nhập vào một mảng số tự nhiên. Hãy xuất ra màn hình:

- Dòng 1 : gồm các số lẻ, tổng cộng có bao nhiêu số lẻ.

- Dòng 2 : gồm các số chẵn, tổng cộng có bao nhiêu số chẵn.

- Dòng 3 : gồm các số nguyên tố.

- Dòng 4 : gồm các số không phải là số nguyên tố.



  1. Viết chương trình tính tổng bình phương của các số âm trong một mảng các số nguyên.

  2. Viết chương trình thực hiện việc đảo một mảng một chiều.

Ví dụ : 1 2 3 4 5 7 9 10 đảo thành 10 9 7 5 4 3 2 1 .

(Không dùng mảng phụ)



  1. Viết chương trình nhập vào hai ma trận A và B có cấp m, n. In hai ma trận lên màn hình. Tổng hai ma trận A và B là ma trận C được tính bởi công thức:

cij= aij +bij ( i=0,1,2,...m-1; j=0,1,2...n-1)

Tính ma trận tổng C và in kết quả lên màn hình.



  1. Viết chương trình nhập vào hai ma trận A có cấp m, k và B có cấp k, n. In hai ma trận lên màn hình. Tích hai ma trận A và B là ma trận C được tính bởi công thức:

cij= ai1*b1j + ai2 *b2j + ai3 *b3j + ... + aik *bkj (i=0,1,2,...m-1;j=0,1,2...n-1)

Tính ma trận tích C và in kết quả lên màn hình.



  1. Xét ma trận A vuông cấp n, các phần tử a[i, i] ( i= 1 ... n ) được gọi là đường chéo chính của ma trận vuông A. Ma trận vuông A được gọi là ma trận tam giác nếu tất cả các phần tử dưới đường chéo chính đều bằng 0. Định thức của ma trận tam giác bằng tích các phần tử trên đường chéo chính. Hãy biến đổi ma trân A về ma trận tam giác. In kết quả từng bước lên màn hình.

  2. Viết chương trình thực hiện việc trộn hai dãy có thứ tự thành một dãy có thứ tự. Yêu cầu không được trộn chung rồi mới sắp thứ tự. Khi trộn phải tận dụng được tính chất đã sắp của hai dãy con.

2. Con trỏ


  1. Thực hiện các bài tập ở phần Mảng , bằng cách sử dụng con trỏ.

3. Xâu ký tự


  1. Viết chương trình nhập một chuỗi ký tự từ bàn phím, xuất ra màn hình mã Ascii của từng ký tự có trong chuỗi.

  2. Viết chương trình nhập một chuỗi ký tự từ bàn phím, xuất ra màn hình chuỗi đảo ngược của chuỗi đó. Ví dụ đảo của “abcdx_egh” là “hge_xdcba”.

  3. Viết chương trình nhập một chuỗi ký tự và kiểm tra xem chuổi đó có đối xứng không. Ví dụ : Chuỗi ABCDEDCBA là chuỗi đối xứng.

  4. Nhập vào một chuỗi bất kỳ, hãy đếm số lần xuất hiện của mỗi loại ký tự.

Ví dụ:

Chuoi1[] = “abcdeaabbdca”

Chuoi2[]=”a b c d e”

SLXH[] = 4,3,2,2,1



  1. Viết chương trình nhập vào một chuỗi.

  • In ra màn hình từ bên trái nhất và phần còn lại của chuỗi.

Ví dụ: “Nguyễn Văn Minh” in ra thành:

Nguyễn


Văn Minh

  • In ra màn hình từ bên phải nhất và phần còn lại của chuỗi.

Ví dụ: “Nguyễn Văn Minh” in ra thành:

Minh


Nguyễn Văn

  1. Viết chương trình nhập vào một chuỗi rồi xuất chuỗi đó ra màn hình dưới dạng mỗi từ một dòng.

Ví dụ: “Nguyễn Văn Minh”

In ra :


Nguyễn

Văn


Minh

  1. Viết chương trình nhập vào một chuỗi, in ra chuỗi đảo ngược của nó theo từng từ.

Ví dụ : chuỗi “Nguyễn Văn Minh” đảo thành “Minh Văn Nguyễn”

  1. Viết chương trình đổi số tiền từ số thành chữ.

Ví dụ: 123 thành chữ là “mot tram hai muoi ba”

  1. Viết chương trình nhập vào họ và tên của một người, cắt bỏ các khoảng trống không cần thiết (nếu có), tách tên ra khỏi họ và tên, in tên lên màn hình. Chú ý đến trường hợp cả họ và tên chỉ có một từ.

  2. Viết chương trình nhập vào họ và tên của một người, cắt bỏ các khoảng trắng bên phải, trái và các khoảng trắng không có nghĩa trong chuỗi. In ra màn hình toàn bộ họ tên người đó dưới dạng chữ hoa, chữ thường.

  3. Viết chương trình nhập vào một danh sách họ và tên của n người theo kiểu chữ thường, đổi các chữ cái đầu của họ, tên và chữ lót của mỗi người thành chữ hoa. In kết quả lên màn hình.

  4. Viết chương trình nhập vào một danh sách họ và tên của n người, tách tên từng người ra khỏi họ và tên rồi sắp xếp danh sách tên theo thứ tự từ điển. In danh sách họ và tên sau khi đã sắp xếp.

Каталог: files -> FileMonHoc
FileMonHoc -> NGÂn hàng câu hỏi lập trình cơ BẢn nhóm câu hỏI 2 ĐIỂM
FileMonHoc -> CHƯƠng 2 giới thiệu về LÝ thuyết số
FileMonHoc -> CÁc hệ MẬt khoá CÔng khai kháC
FileMonHoc -> BỘ MÔn duyệt chủ nhiệm Bộ môn
FileMonHoc -> Khoa công nghệ thông tin cộng hòa xã HỘi chủ nghĩa việt nam
FileMonHoc -> Chủ nhiệm Bộ môn Ngô Thành Long ĐỀ CƯƠng chi tiết bài giảNG
FileMonHoc -> Chủ nhiệm Bộ môn Phan Nguyên Hải ĐỀ CƯƠng chi tiết bài giảNG
FileMonHoc -> Khoa: CÔng nghệ thông tin cộng hòa xã HỘi chủ nghĩa việt nam
FileMonHoc -> MẬt mã khóA ĐỐi xứng lý thuyết cơ bản của Shannon
FileMonHoc -> Khoa cntt cộng hòa xã HỘi chủ nghĩa việt nam

tải về 1.56 Mb.

Chia sẻ với bạn bè của bạn:
1   ...   10   11   12   13   14   15   16   17   ...   29




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương