Bài tập mảng 1 chiều C++
Xin chào các bạn, bài viết này mình sẽ giới thiệu đến các bạn một số bài tập liên quan đến mảng 1 chiều trong C++.
Nội dung
- Dạng nhập xuất mảng
- Dạng tính tổng các số trong mảng
- Dạng tìm giá trị lớn nhất và nhỏ nhất
- Dạng chèn một phần tử vào mảng
- Dạng xóa một phần tử khỏi mảng
Dạng nhập xuất mảng
Đề bài: Hãy nhập một số vào một mảng số nguyên gồm n phần tử và hiển thị chúng.
Code:
#include <iostream>
using namespace std;
int main() {
int size;
cout << "Enter size: ";
cin >> size;
int *arr = new int[size];
for (int i = 0; i < size; ++i) {
cout << "Enter arr[" << i << "]: ";
cin >> arr[i];
}
for (int i = 0; i < size; ++i) {
cout << "arr[" << i << "]: " << arr[i] << endl;
}
return 0;
}
Kết quả:
Enter size: 5
Enter arr[0]: 1
Enter arr[1]: 2
Enter arr[2]: 3
Enter arr[3]: 4
Enter arr[4]: 5
arr[0]: 1
arr[1]: 2
arr[2]: 3
arr[3]: 4
arr[4]: 5
Dạng tính tổng các số trong mảng
Đề bài: Hãy nhập một số vào một mảng số nguyên gồm n phần tử và tính tổng tất cả các phần tử trong mảng.
Code:
#include <iostream>
using namespace std;
int main() {
int size;
cout << "Enter size: ";
cin >> size;
int *arr = new int[size];
for (int i = 0; i < size; ++i) {
cout << "Enter arr[" << i << "]: ";
cin >> arr[i];
}
int sum = 0;
for (int i = 0; i < size; ++i) {
sum += arr[i];
}
cout << "Sum: " << sum << endl;
return 0;
}
Kết quả:
Enter size: 5
Enter arr[0]: 1
Enter arr[1]: 2
Enter arr[2]: 3
Enter arr[3]: 4
Enter arr[4]: 5
Sum: 15
Dạng tìm giá trị lớn nhất và nhỏ nhất
Đề bài: Hãy nhập một số vào một mảng số nguyên gồm n phần tử và tìm các giá trị lớn nhất/nhỏ nhất.
Code:
#include <iostream>
using namespace std;
int main() {
int size;
cout << "Enter size: ";
cin >> size;
int *arr = new int[size];
for (int i = 0; i < size; ++i) {
cout << "Enter arr[" << i << "]: ";
cin >> arr[i];
}
int min = arr[0];
int max = arr[0];
for (int i = 0; i < size; ++i) {
if (arr[i] < min) {
min = arr[i];
}
if (arr[i] > max) {
max = arr[i];
}
}
cout << "Min: " << min << endl;
cout << "Max: " << max << endl;
return 0;
}
Kết quả:
Enter size: 5
Enter arr[0]: 1
Enter arr[1]: 2
Enter arr[2]: 3
Enter arr[3]: 4
Enter arr[4]: 5
Min: 1
Max: 5
Dạng chèn một phần tử vào mảng
Đề bài: Hãy nhập một số vào một mảng số nguyên gồm n phần tử và chèn một phần tử vào vị trí x (0 <= x <= n).
Code:
#include <iostream>
using namespace std;
int main() {
int size;
cout << "Enter size: ";
cin >> size;
int *arr = new int[size];
for (int i = 0; i < size; ++i) {
cout << "Enter arr[" << i << "]: ";
cin >> arr[i];
}
int value;
cout << "Enter value to insert: ";
cin >> value;
int position;
cout << "Enter position (0-" << size << "): ";
cin >> position;
if (position < 0 || position > size) {
cout << "Position invalid" << endl;
return 1;
}
int *tmp = new int[size];
for (int i = 0; i < size; ++i) {
tmp[i] = arr[i];
}
arr = new int[size + 1];
for (int i = 0; i < position; ++i) {
arr[i] = tmp[i];
}
for (int i = position; i < size; ++i) {
arr[i + 1] = tmp[i];
}
arr[position] = value;
size += 1;
for (int i = 0; i < size; ++i) {
cout << "arr[" << i << "]: " << arr[i] << endl;
}
return 0;
}
Kết quả:
Enter size: 2
Enter arr[0]: 1
Enter arr[1]: 2
Enter value to insert: 3
Enter position (0-2): 2
arr[0]: 1
arr[1]: 2
arr[2]: 3
Dạng xóa một phần tử khỏi mảng
Đề bài: Hãy nhập một số vào một mảng số nguyên gồm n phần tử và hãy xóa một phần tử tại vị trí x (0 <= x < n).
Code:
#include <iostream>
using namespace std;
int main() {
int size;
cout << "Enter size: ";
cin >> size;
int *arr = new int[size];
for (int i = 0; i < size; ++i) {
cout << "Enter arr[" << i << "]: ";
cin >> arr[i];
}
int position;
cout << "Enter position (0-" << size - 1 << "): ";
cin >> position;
if (position < 0 || position >= size) {
cout << "Position invalid" << endl;
return 1;
}
int *tmp = new int[size];
for (int i = 0; i < size; ++i) {
tmp[i] = arr[i];
}
arr = new int[size - 1];
for (int i = 0; i < position; ++i) {
arr[i] = tmp[i];
}
for (int i = position + 1; i < size; ++i) {
arr[i - 1] = tmp[i];
}
size -= 1;
for (int i = 0; i < size; ++i) {
cout << "arr[" << i << "]: " << arr[i] << endl;
}
return 0;
}
Kết quả:
Enter size: 3
Enter arr[0]: 1
Enter arr[1]: 2
Enter arr[2]: 3
Enter position (0-2): 2
arr[0]: 1
arr[1]: 2
Cám ơn các bạn đã theo dõi, chúc các bạn một ngày tốt lành!