Trắc nghiệm Tin học 11 C++ Bài 16: Ví dụ làm việc với tệp có đáp án

Trắc nghiệm Tin học 11 C++ Bài 16: Ví dụ làm việc với tệp có đáp án

  • 71 lượt thi

  • 15 câu hỏi

  • 0 phút

Danh sách câu hỏi

Câu 1:

Cho đoạn chương trình sau:

cin>>a>>b;

S=a+b;

ofstream fo ("baitap.txt");

fo<<s;

fo.close();

Trong đoạn chương trình trên tệp “baitap.txt” dùng để làm gì?

Xem đáp án

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

Để khai báo biến tệp đồng thời mở tệp để ghi dữ liệu ta dùng cú pháp:

ofstream <tên biến tệp>(<xâu tên tệp>); </xâu></tên>


Câu 2:

Cho đoạn chương trình sau:

cin>>a>>b;

S=a+b;

ofstream fo ("baitap.txt");

fo<<s;

fo.close();

Trong đoạn chương trình trên dữ liệu được nhập từ đâu?

Xem đáp án

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

Dữ liệu được nhập từ bàn phím thông qua câu lệnh:

cin>>a>>b;


Câu 3:

Hãy cho biết sau khi thực hiện đoạn lệnh sau:

a = 10;

b =5;

s=a*b;

ofstream fo ("ketqua.txt");

fo<<s;

fo.close();

Thì tệp ketqua.txtcó nội dung gì?

Xem đáp án

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

Vì s=a*b=5*10=50, câu lệnh

ofstream fo ("ketqua.txt");

fo<<s;

Thực hiện việc ghi giá trị của s vào file ketqua.txt


Câu 4:

Chọn phát biểu sai trong các phát biểu sau?

Xem đáp án

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

Sau khi kết thúc phiên làm việc với tệp thì ta cần đóng tệp và giải phóng tài nguyên. Giả sử tệp được mở đang gắn với biến tệp f thì ta chỉ cần sử dụng lệnh f.close() để đóng tệp.


Câu 5:

Cho đoạn chương trình:

#include <bits/stdc++.h>using namespace std;int main(){</bits/stdc++.h>

ifstream fi("trai.txt");

int x, y;

while (fi >>x >>y){

float d = sqrt(x*x + y*y);

cout <<fixed<<setw(10)<<setprecision(2) << d << endl;

}return 0;}

Lỗi sai trong đoạn chương trình trên là:

Xem đáp án

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

Thiếu câu lệnh đóng tệp: fi.close();

Sau khi kết thúc phiên làm việc với tệp thì ta cần đóng tệp và giải phóng tài nguyên.


Câu 6:

Cho 2 số a,b từ tệp bt.txt, tính tổng của 2 số rồi ghi kết quả ra màn hình, hãy chỉ ra lỗi sai đoạn chương trình sau :

#include <bits/stdc++.h>using namespace std;int main(){</bits/stdc++.h>

int a,b;

while (fi >>a >>b){

s=a+b;

cout <<s

}return 0;}

fi.close();

Xem đáp án

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

Thiếu câu lệnh ifstream fi("bt.txt");

Đây là câu lệnh mở tệp bt.txt để đọc dữ liệu.


Câu 7:

Cho đoạn chương trình sau:

# include

# include

int main()

{

ifstream;

f>>a>>b;

s=a+b;

cout<<s;

return 0;

}

Biến tệp trong đoạn chương trình trên là:

Xem đáp án

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

Khai báo biến tệp để sau đó đọc dữ liệu:ifstream <tên biến tệp>; </tên>


Câu 8:

Cho đoạn chương trình sau:

# include

# include

int main()

{

ifstream;

f>>a>>b;

s=a+b;

cout<<s;

return 0;

}

Tệp “baitap.txt” là tệp dùng để:

Xem đáp án

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

Vì tệp “baitap.txt” được dùng để đọc dữ liệu qua câu lệnh:

ifstream;

f.open(“baitap.txt’);


Câu 9:

Câu lệnh ifstream <tên biến tệp>có nghĩa là gì?

Xem đáp án

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

Khai báo biến tệp để sau đó đọc dữ liệu:ifstream <tên biến tệp>;


Câu 10:

Câu lệnh sau thực hiện nhiệm vụ gì?

ofstream fi("dulieu.txt") ;

fi<<a;

Xem đáp án

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

Ghi dữ liệu vào tệp đang mở ở chế độ ghi:

biến_tệp << biến1 << biến2 << ... << biếnK;


Câu 11:

Cho câu lệnh sau:

ifstream fi("f:\mydata\dulieu.txt") ;

fi>>a;

Câu lệnh trên thực hiện:

Xem đáp án

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

Vì câu lệnh fi>>a;

Là câu lệnh đọc dữ liệu từ tệp đang mở (tệp “delieu.txt”) ở chế độ đọc.


Câu 12:

Cho đoạn chương trình sau:

# include

# include

float a,s;

int main()

{

ifstream fi(“dulieu.txt") ;

ofstream fo("ketqua.txt") ;

fi>>a;

s=a*a;

fo<<s;

fi.close();

f0.close();

return 0;

}

Đoạn chương trình trên thực hiện:

Xem đáp án

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

Đoạn chương trình trên thực hiện: Đọc dữ liệu từ tệp và ghi kết quả ra tệp, thông qua 2 câu lệnh:

ifstream fi(“dulieu.txt") ;

ofstream fo("ketqua.txt") ;


Câu 13:

Khẳng định nào sau đây là sai?

Xem đáp án

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

Đọc dữ liệu từ tệp đang mở ở chế độ đọc tương tự như lệnh cin:

biến_tệp >>biến1 >>biến2 >>... >>biếnK;


Câu 14:

Cho đoạn chương trình sau:

# include

# include

float a,s,b;

int main()

{

cin>>a,b

ofstream fo("ketqua.txt") ;

s=a+b;

cout<<s;

f0.close();

return 0;

}

Với a=5, b=10 thì nội dung của tệp “ketqua.txt” là:

Xem đáp án

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

Vì a=5, b=10, s=a+b=5+10=15, câu lệnh cout<

→ ghi giá trị của s=15 ra màn hình

→ trên tệp “ketqua.txt” không có giá trị của s.


Câu 15:

Cho đoạn chương trình sau:

# include

# include

float a,s,b;

int main()

{

cin>>a>>b;

ofstream fo("ketqua.txt") ;

s=a+b;

fo<<s;

f0.close();

return 0;

}

Hãy cho biết tệp nào được khai báo để đọc dữ liệu:

Xem đáp án

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

Dữ liệu được nhập từ bàn phím thông qua câu lệnh cin>>a>>b;

→ Không có tệp để đọc dữ liệu.


Bắt đầu thi ngay