Bài 9: Làm việc với dãy số có đáp án
-
501 lượt thi
-
12 câu hỏi
-
30 phút
Danh sách câu hỏi
Câu 1:
Số phần tử trong khai báo dưới đây là bao nhiêu?
#define nmax 100
int a[nmax+5];
Đáp án đúng là: C
Số phần tử trong mảng a là nmax+5=100+5=105
Câu 2:
Cú pháp khai báo dãy số nào sau đây là sai?
Đáp án đúng là: A
Khi khai báo biến mảng trong C++ phải xác định cụ thể số phần tử ngay lúc khai báo, không được sử dụng biến chưa có giá trị. Như vậy ở đáp án A, biến n1 chưa có giá trị nên khai báo này sai.
Câu 3:
Để nhập dữ liệu từ bàn phím cho mảng a gồm 100 phần tử là số nguyên ta dùng lệnh nào sau đây?
Đáp án đúng là: C
Để nhập dữ liệu từ bàn phím cho mảng A có 100 phần tử là số nguyên ta dùng lệnh lặp với số lần biết trước là for, câu cin>>a[i] là nhập dữ liệu từ bàn phím cho từng phần tử.
Câu 4:
Em hãy chọn phát biểu đúng khi nói về dữ liệu kiểu mảng:
Đáp án đúng là: C
Dữ liệu kiểu mảng là tập hợp các phần tử có thứ tự và mọi phần tử có cùng một kiểu dữ liệu.
Câu 5:
khi ta viết lệnh: int a[4] = {123, 456, -789, 100}; chỉ số của phần tử có giá trị -789 là bao nhiêu?
Đáp án đúng là: A
Chỉ số mặc định của mảng gồm n phần tử là từ 0 đến n-1. Như vậy với lệnh khai báo và khởi tạo int a[4] = {123, 456, -789, 100}; ta biết được:
Chỉ số | 0 | 1 | 2 | 3 |
Giá trị | 123 | 456 | -789 | 100 |
Câu 6:
khi ta viết lệnh: int a[4] = {123}; thì phần tử nào sẽ được gán giá trị khởi tạo là 120?
Đáp án đúng là: C
Chỉ số mặc định của mảng gồm n phần tử là từ 0 đến n-1. Như vậy với lệnh khai báo và khởi tạo int a[4] = {123}; ta biết được:
Chỉ số | 0 | 1 | 2 | 3 |
Giá trị | 123 | 0 | 0 | 0 |
Câu 7:
Cho chương trình C++ sau:
#include
using namespace std;
int a[100], n;
int main(){ cin>>n;
for (int i=0; i
for (int i=0; i } Chương trình trên thực hiện những công việc gì?
Đáp án đúng là: D
Trong thân chương trình có 3 câu lệnh sau:
- Lệnh 1: cin>>n; //Nhập số phần tử của mảng
- Lệnh 2: for (int i=0; i
- Lệnh 3: for (int i=0; i /*In ra màn hình giá trị của n phần tử trong mảng a, mỗi phần tử cách nhau 1 dấu cách trống.*/
Câu 8:
Cho chương trình C++ sau:
#include
using namespace std;
int a[100], n, s=0;
int main(){ cin>>n;
for (int i=0; i {cin>>a[i]; if (i%2!=0) s=s+a[i];} cout< } Chương trình trên đang giải quyết bài toán nào?
Đáp án đúng là: C
Biểu thức điều kiện trong câu lệnh if là kiểm tra xem i có lẻ không, nếu i lẻ thì tính tổng của các phần tử có chỉ số i lẻ đó.
Câu 9:
Cho chương trình C++ sau:
#include
using namespace std;
int a[100], n, s=0;
int main(){ cin>>n;
for (int i=0; i {cin>>a[i]; if (a[i]%2==0) s=s+a[i];} cout< } Chương trình trên giải quyết bài toán nào?
Đáp án đúng là: D
Biểu thức điều kiện trong câu lệnh if là kiểm tra xem giá trị của phần tử thứ i có chẵn không, nếu chẵn thì tính tổng của các phần tử có giá trị chẵn đó.
Câu 10:
Cho chương trình C++ sau:
#include
using namespace std;
int a[100], n, s=0;
int main(){ cin>>n;
for (int i=0; i {cin>>a[i]; int y=sqrt(a[i]); if (y*y==a[i]) s=s+a[i];} cout< } Khi chạy chương trình ta nhập các giá trị cho 4 phần tử trong mảng là 12 25 4 39 thì kết quả trên màn hình là?
Đáp án đúng là: A
Chương trình trên giải quyết bài toán tính tổng các số chính phương trong dãy a gồm n số nguyên. Như vậy trong các giá trị của mảng a có 25 và 4 là hai số chính phương.
Câu 11:
Cho chương trình C++ sau:
#include
using namespace std;
int a[100], n, s=0;
int main(){ cin>>n;
srand((int)(time(0));
for (int i=0; i for (int i=0; i } Đề bài của bài toán được thực hiện bởi chương trình trên là?
Đáp án đúng là: C
Chương trình trên giải quyết bài toán “nhập và in ra giá trị ngẫu nhiên trong phạm vi [1,100] của mảng a gồm n số nguyên”.
Câu 12:
Cho chương trình C++ sau:
#include
using namespace std;
int a[100], n, s=0;
int main(){ cin>>n;
for (int i=0; i
for (int i=1; i for (int i=0; i } Giá trị của mảng a được in ra màn hình có thứ tự?
Đáp án đúng là: A
- for (int i=0; i
- for (int i=1; i - for (int i=0; i