Bài giảng Kỹ thuật lập trình – Bài thực hành số 1: Con trỏ và cấp phát động
Số trang: 5
Loại file: pdf
Dung lượng: 96.44 KB
Lượt xem: 9
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:
Bài thực hành số 1: Con trỏ và cấp phát động giúp người học luyện tập những kiến thức và kỹ năng về: Thực hành về con trỏ, con trỏ và mảng, cấp phát động,... Mời các bạn cùng tham khảo để biết thêm các nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình – Bài thực hành số 1: Con trỏ và cấp phát động Bài thực hành số 1: Con trỏ và cấp phát động Created by SangDV Ngày 16 tháng 3 năm 2020 Trong bài này các bạn sẽ làm quen với việc sử dụng con trỏ và cấp phát động. Phần 1. Thực hành về con trỏ om Bài tập 1 Viết một chương trình C nhập vào 3 số nguyên. Thiết lập một con trỏ để lần lượt trỏ tới từng số nguyên và hiển thị kết quả giá trị tham chiếu ngược của con trỏ. .c Lưu ý: Phép toán & trả về địa chỉ của biến. In [ ]: # include int main(){ int x, y, z; ng co int* ptr; printf(Enter three integers: ); scanf(%d %d %d, &x, &y, &z); an printf(\nThe three integers are:\n); ptr = &x; th printf(x = %d\n, *ptr); g /***************** on # YOUR CODE HERE # *****************/ du return 0; } u Bài tập 2 cu Viết chương trình in ra địa chỉ của 5 phần tử đầu tiên trong mảng được định nghĩa sau đây: int a[7]= {13, -355, 235, 47, 67, 943, 1222}; Lưu ý: Để in địa chỉ con trỏ các bạn sử dụng ký tự định dạng %p In [ ]: #include int main(){ int a[7]= {13, -355, 235, 47, 67, 943, 1222}; printf(address of first five elements in memory.\n); for (int i=0; iBài tập 3 Viết chương trình yêu cầu nhập giá trị cho 3 biến số nguyên a, b, c kiểu int. Sau đó sử dụng duy nhất một con trỏ để cộng giá trị của mỗi biến thêm 100. In [ ]: #include void main(void) { int x = 25, y = 50, z = 75; int *ptr; printf(Here are the values of x, y, and z:\n); printf(%d %d %d\n, x, y, z); /***************** # YOUR CODE HERE # *****************/ om printf(Once again, here are the values of x, y, and z:\n); printf(%d %d %d\n, x, y, z); } .c Phần 2. Con trỏ và mảng Bài tập 4 ng co Viết hàm countEven(int*, int) nhận một mảng số nguyên và kích thước của mảng, trả về số lượng số chẵn trong mảng. an In [ ]: int counteven(int* arr, int size){ int i; th int count =0; g /***************** # YOUR CODE HERE # on *****************/ du return count; } u Bài tập 5 cu Viết hàm trả về con trỏ trỏ tới giá trị lớn nhất của một mảng các số double. Nếu mảng rỗng hãy trả về NULL. In [ ]: double* maximum(double* a, int size){ double *max; double *p; int i; max=a; if a==NULL return NULL; /***************** # YOUR CODE HERE # *****************/ return max; } 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài tập 6 Viết hàm đảo ngược một mảng các số nguyên theo hai cách: dùng chỉ số và dùng con trỏ. Ví dụ mảng đầu vào là [9, -1, 4, 5, 7] thì kết quả là [7, 5, 4, -1, 9]. In [ ]: void reversearray(int arr[], int size){ int i, j, tmp; i=0; j= size -1; /***************** # YOUR CODE HERE # *****************/ } void reversearray(int *arr, int size){ int i, j, tmp; i=0; j= size -1; om /***************** # YOUR CODE HERE # .c *****************/ } Phần 3. Cấp phát động ng co Bài tập 7 Viết chương trình nhập vào một mảng các số nguyên với số lượng các phần tử nhập từ bàn phím. Sau an đó sắp xếp mảng theo thứ tự tăng dần. Hiển thị danh sách mảng trước và sau khi sắp xếp. Yêu cầu chỉ sử dụng con trỏ để truy cập mảng, không truy cập theo index mảng. th In [ ]: #include g int *a; on int n, tmp; du int main(){ printf(Enter the number of elements: ); scanf(%d, &n); u cu //#Allocate memory /***************** # YOUR CODE HERE # *****************/ for(int i = 0; i < n; i++) scanf(%d, a + i); printf(The input array is: \n); for(int i = 0; i < n; i++) printf(%d , *(a + i)); printf(\n); //#Sort array /***************** # YOUR CODE H ...
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình – Bài thực hành số 1: Con trỏ và cấp phát động Bài thực hành số 1: Con trỏ và cấp phát động Created by SangDV Ngày 16 tháng 3 năm 2020 Trong bài này các bạn sẽ làm quen với việc sử dụng con trỏ và cấp phát động. Phần 1. Thực hành về con trỏ om Bài tập 1 Viết một chương trình C nhập vào 3 số nguyên. Thiết lập một con trỏ để lần lượt trỏ tới từng số nguyên và hiển thị kết quả giá trị tham chiếu ngược của con trỏ. .c Lưu ý: Phép toán & trả về địa chỉ của biến. In [ ]: # include int main(){ int x, y, z; ng co int* ptr; printf(Enter three integers: ); scanf(%d %d %d, &x, &y, &z); an printf(\nThe three integers are:\n); ptr = &x; th printf(x = %d\n, *ptr); g /***************** on # YOUR CODE HERE # *****************/ du return 0; } u Bài tập 2 cu Viết chương trình in ra địa chỉ của 5 phần tử đầu tiên trong mảng được định nghĩa sau đây: int a[7]= {13, -355, 235, 47, 67, 943, 1222}; Lưu ý: Để in địa chỉ con trỏ các bạn sử dụng ký tự định dạng %p In [ ]: #include int main(){ int a[7]= {13, -355, 235, 47, 67, 943, 1222}; printf(address of first five elements in memory.\n); for (int i=0; iBài tập 3 Viết chương trình yêu cầu nhập giá trị cho 3 biến số nguyên a, b, c kiểu int. Sau đó sử dụng duy nhất một con trỏ để cộng giá trị của mỗi biến thêm 100. In [ ]: #include void main(void) { int x = 25, y = 50, z = 75; int *ptr; printf(Here are the values of x, y, and z:\n); printf(%d %d %d\n, x, y, z); /***************** # YOUR CODE HERE # *****************/ om printf(Once again, here are the values of x, y, and z:\n); printf(%d %d %d\n, x, y, z); } .c Phần 2. Con trỏ và mảng Bài tập 4 ng co Viết hàm countEven(int*, int) nhận một mảng số nguyên và kích thước của mảng, trả về số lượng số chẵn trong mảng. an In [ ]: int counteven(int* arr, int size){ int i; th int count =0; g /***************** # YOUR CODE HERE # on *****************/ du return count; } u Bài tập 5 cu Viết hàm trả về con trỏ trỏ tới giá trị lớn nhất của một mảng các số double. Nếu mảng rỗng hãy trả về NULL. In [ ]: double* maximum(double* a, int size){ double *max; double *p; int i; max=a; if a==NULL return NULL; /***************** # YOUR CODE HERE # *****************/ return max; } 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài tập 6 Viết hàm đảo ngược một mảng các số nguyên theo hai cách: dùng chỉ số và dùng con trỏ. Ví dụ mảng đầu vào là [9, -1, 4, 5, 7] thì kết quả là [7, 5, 4, -1, 9]. In [ ]: void reversearray(int arr[], int size){ int i, j, tmp; i=0; j= size -1; /***************** # YOUR CODE HERE # *****************/ } void reversearray(int *arr, int size){ int i, j, tmp; i=0; j= size -1; om /***************** # YOUR CODE HERE # .c *****************/ } Phần 3. Cấp phát động ng co Bài tập 7 Viết chương trình nhập vào một mảng các số nguyên với số lượng các phần tử nhập từ bàn phím. Sau an đó sắp xếp mảng theo thứ tự tăng dần. Hiển thị danh sách mảng trước và sau khi sắp xếp. Yêu cầu chỉ sử dụng con trỏ để truy cập mảng, không truy cập theo index mảng. th In [ ]: #include g int *a; on int n, tmp; du int main(){ printf(Enter the number of elements: ); scanf(%d, &n); u cu //#Allocate memory /***************** # YOUR CODE HERE # *****************/ for(int i = 0; i < n; i++) scanf(%d, a + i); printf(The input array is: \n); for(int i = 0; i < n; i++) printf(%d , *(a + i)); printf(\n); //#Sort array /***************** # YOUR CODE H ...
Tìm kiếm theo từ khóa liên quan:
Kỹ thuật lập trình Bài giảng Kỹ thuật lập trình Thực hành về con trỏ Con trỏ và mảng Cấp phát độngGợi ý tài liệu liên quan:
-
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 256 0 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 200 0 0 -
Giới thiệu môn học Ngôn ngữ lập trình C++
5 trang 189 0 0 -
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 trang 158 0 0 -
Luận văn: Nghiên cứu kỹ thuật giấu tin trong ảnh Gif
33 trang 150 0 0 -
Báo cáo thực tập Công nghệ thông tin: Lập trình game trên Unity
27 trang 117 0 0 -
Giáo trình về phân tích thiết kế hệ thống thông tin
113 trang 114 0 0 -
LUẬN VĂN: Tìm hiểu kỹ thuật tạo bóng cứng trong đồ họa 3D
41 trang 105 0 0 -
Bài giảng Kỹ thuật lập trình - Chương 10: Tổng kết môn học (Trường Đại học Bách khoa Hà Nội)
67 trang 104 0 0 -
Giáo trình Nhập môn lập trình VB6: Phần 2
184 trang 84 0 0