Câu hỏi:

12/05/2022 552 Lưu

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

#include<bits/stdc++.h>

 using namespace std;

 int main(){

                      int a=36, b=90;

                      while (a*b!=0)

                            {if (a>b) a=a%b;

                               else b=b%a; }

                     cout<<a+b;

                 }

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

A. 18

B. 0

C. 36

D. 126

Quảng cáo

Trả lời:

verified Giải bởi Vietjack

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

 Giá trị của a, b sau mỗi lần duyệt là:

a

36

36

0

b

90

18

18

a+b

18

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Câu 1

A. while (<Điều kiện>) { <dãy lệnh>;}

B. While < điều kiện > to < câu lệnh 1 > do < câu lệnh 2 >;

C. While < điều kiện > do ;< câu lệnh >;

D. While < điều kiện >  < câu lệnh >;

Lời giải

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

Cú pháp lệnh lặp với số lần chưa biết trước:

   while (<điều kiện>) { <câu lệnh>}; 

Trong đó:

   + Điều kiện: thường là 1 phép so sánh

   + Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.

Câu 2

A. Khi đủ số vòng lặp

B. Khi tìm được output

C. Khi điều kiện cho trước được thỏa mãn

D. Cả A, B và C đều đúng

Lời giải

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

Vòng lặp while là vòng lặp chưa biết trước số lần lặp vì vậy việc lặp chỉ kết thúc khi một điều kiện cho trước được thỏa mãn.

Câu 5

A. Thực hiện < câu lệnh >

B. Kiểm tra giá trị của < điều kiện >

C. Thực hiện câu lệnh sau từ khóa Then

D. Kiểm tra < câu lệnh >

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Câu 6

A. do { <dãy lệnh>;} while (<Điều kiện>)

B. do { <dãy lệnh>;} while (<Điều kiện>);

C. do  <dãy lệnh>; while (<Điều kiện>);

D. while (<Điều kiện>) do { <dãy lệnh>;}

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP