Chủ nhật, 24/11/2024
IMG-LOGO
Trang chủ Lớp 8 Tin học Trắc nghiệm Bài 7: Câu lệnh lặp có đáp án

Trắc nghiệm Bài 7: Câu lệnh lặp có đáp án

Trắc nghiệm Bài 7: Câu lệnh lặp có đáp án

  • 552 lượt thi

  • 11 câu hỏi

  • 30 phút

Danh sách câu hỏi

Câu 1:

Chọn cú pháp câu lệnh lặp là:

Xem đáp án

Đáp án đúng là: B

Để mô tả cấu trúc lặp với số lần biết trước, C++ dùng câu lệnh for như sau:

for (<biểu thức khởi tạo>; <biểu thức giới hạn>; <biểu thức tăng giảm>) <Câu lệnh>;


Câu 2:

Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:

Xem đáp án

Đáp án đúng là: A

Biến đếm là biến kiểu số nguyên hoặc kí tự.

Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm, giá trị đầu phải nhỏ hơn giá trị cuối.

Giá trị biến đếm được điều chỉnh tự động, vì vậy câu lệnh không được thay đổi giá trị biến đếm.


Câu 3:

Cho các câu lệnh sau hãy chỉ ra câu lệnh dạng tiến trong C++ đúng:

Xem đáp án

Đáp án đúng là: B

Cú pháp câu lệnh lặp dạng tiến:

for (<biểu thức khởi tạo>; <biểu thức giới hạn>; <biểu thức tăng >) <Câu lệnh>;

Trong đó: biến đếm phải là kiểu nguyên. Giá trị khởi tạo nhỏ hơn hoặc bằng giá trị biểu thức giới hạn.


Câu 4:

 Đoạn chương trình sau giải bài toán nào?

int T=0;

      for(inti=1; i<=100; i++)

          If ((i% 3 == 0) and (i% 5= = 0))             T :=T + i;

Xem đáp án

Đáp án đúng là: B

 Đoạn chương trình:

int T=0;

      for(inti=1; i<=100; i++) { i chạy trong phạm vi từ 1 đến 100}

          If ((i% 3 == 0) and (i% 5= = 0))   { kiểm tra i chia hết cho 3 và cho 5 không}

T :=T + i; {Cộng dồn vào tổng}


Câu 5:

Cho chương trình C++ sau:

#include<bits/stdc++.h>

 using namespace std;

 int main(){

                   int i=1, s=0;

                   for (; i<=10; i++); s=s+i;

                   cout<< “s=”<<s; }

Kết quả khi chạy chương trình trên là:

Xem đáp án

Đáp án đúng là: C

Vì sau for sử dụng dấu ; được gọi là lệnh rỗng, vì vậy sau khi i=11 thoát khỏi vòng lặp thì câu lệnh s=s+i mới được thực hiện  s=0+11=11


Câu 6:

Cho chương trình C++ sau:

#include<bits/stdc++.h>

 using namespace std;

 int main(){

                      int i, s=0;

                      for (i=1; i<10; i+2) s=s+i;

                      cout<< "s="<<s; }

Kết quả khi chạy chương trình trên là:

Xem đáp án

Đáp án đúng là: D

Biểu thức tăng giảm trong cấu trúc for chỉ sử dụng phép tăng ++ hoặc phép giảm --. Như vậy trong bài này ta sử dụng i+2 nên bài toán không giải quyết được.


Câu 7:

Cho chương trình C++ sau:

#include<bits/stdc++.h>

 using namespace std;

 int main(){

                      int i; float s=0;

                      for (i=1; i<=5; i++) s=s+1/i;

                      cout<< "s="<<s; }

Kết quả khi chạy chương trình trên là:

Xem đáp án

Đáp án đúng là: B

Phép tính 1/i với i và 1 đều là số nguyên nên kết quả của phép tính là phép chia lấy phần nguyên do đó: s=s+1/i=0+1/1+1/2+1/3+1/4+1/5=0+1+0+0+0+0=1


Câu 8:

Câu lệnh in ra màn hình 10 chữ “Mau sac” trong C++ là:

Xem đáp án

Đáp án đúng là: D

Cú pháp câu lệnh lặp dạng lùi:

for (<biểu thức khởi tạo>; <biểu thức giới hạn>; <biểu thức giảm >) <Câu lệnh>;

Trong đó: biến đếm phải là kiểu nguyên. Giá trị khởi tạo lớn hơn hoặc bằng giá trị biểu thức giới hạn.


Câu 9:

Cho chương trình C++ sau:

#include<bits/stdc++.h>

 using namespace std;

 int main(){

                      int i; float s=0;

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

                            {s=s+1/i;

                                cout<<s<< “\t”; }

                 }

Kết quả khi chạy chương trình trên là:

Xem đáp án

Đáp án đúng là: C

Phép tính 1/i với i và 1 đều là số nguyên nên kết quả của phép tính là phép chia lấy phần nguyên do đó: s=s+1/i với i=1 s=0+1/1=1; rồi thực hiện lệnh                                 cout<<s<< “\t”; tức là in ra giá trị s sau đó cách 1 khoảng tab, cứ thực hiện lặp lại công việc này cho đến khi i=6 thì dừng. Như vậy kết quả trên màn hình là:

 1         1           1            1          1.


Câu 10:

Cho chương trình C++ sau:

#include<bits/stdc++.h>

 using namespace std;

 int main(){

                      int i; float s=0;

                      for (i=1; i<=5; i++) s=s+1.0/i;

                      cout<< "s="<<s; }

Kết quả khi chạy chương trình trên là:

Xem đáp án

Đáp án đúng là: A

Phép tính 1.0/i có 1.0 là số thực nên kết quả của phép tính là phép chia cho kết quả thực: s=s+1.0/i=0+1.0/1+1.0/2+.01/3+1.0/4+1.0/5=0+1+0.5+0.333333+0.25+0.2=2.28333


Bắt đầu thi ngay