Tải bản đầy đủ (.doc) (7 trang)

Đề cương cuối hkii tin 11 2021 2022 (1)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (77.91 KB, 7 trang )

SỞ GD& ĐT THANH HÓA

ĐỀ CƯƠNG CUỐI HK II (2021 – 2022)

TRƯỜNG THPT CHU VĂN AN

MÔN:TIN HỌC - KHỐI 11

Câu 1: Khi viết chương trình con, khơng cần trả về giá trị qua tên của nó ta dùng :
A. Thủ tục.                      B. Chương trình chính   
C. Hàm.                         D. Chương trình con.
Câu 2: Phát biểu nào sau đây về mảng là khơng chính xác?
A. Chỉ số của mảng không nhất thiết bắt đầu từ 1
B. Độ dài tối đa của mảng là 255
C. Có thể xây dựng mảng nhiều chiều
D. Xâu kí tự cũng dược xem như là một loại mảng
Câu 3: Biến cục bộ là các biến được khai báo trong ?
A. Khai báo của chương trình chính
B. Khai báo trong tham số hình thức
C. Khai báo trong chương trình con
D. Khai báo trong tham số thực sự
Câu 4: Phát biểu nào dưới đây về kiểu mảng là phù hợp?
A. Là một tập hợp các số nguyên.
B. Độ dài tối đa của mảng là 255.
C. Là một dãy hữu hạn các phần tử cùng kiểu.
D. Mảng khơng thể chứa kí tự.
Câu 5: Lệnh nào sau đây truy cập chính xác phần tử thứ bảy được lưu trữ trong mảng A, một mảng có 100
phần tử?
A. A (7);
B. A [6];
C. A [7];


D. A;
Câu 6: Đâu là câu lệnh đúng cú pháp?
A. for (int i=0; iB. for (int i=0;i++; iC. for (iD. for (i++;int i=0; iCâu 7: Chương trình con là:
A.Dãy các lệnh mơ tả một số thao tác nhất định và có thể thực hiện được từ nhiều vị trí trong chương trình.
B. Một chuỗi các câu lệnh tương đối giống nhau
D. Một chuỗi các câu lệnh liên kết với nhau để thực hiện một cơng việc nào đó
C. Chương trình nằm trong chương trình chính
Câu 8: Biến xâu được khai báo như thế nào?
A.
String <tên biến xâu>[độ dài lớn nhất];
B.
String <độ dài lớn nhất>[tên biến xâu];
C.
String <tên biến xâu>(độ dài lớn nhất);
D.
String [tên biến xâu]<độ dài lớn nhất>;
Câu 9: Thủ tục S.erase (vt,n) thực hiện thao tác:
A.
Xóa từ vị trí vt, n ký tự trong xâu S
B.
Xóa từ vị trí vt đến vị trí n trong xâu S
C.
Xóa từ vị trí vt trở đi trong xâu S
D.
Xóa kí tự vt và n trong xâu S
Câu 10: Cho xâu A= “anh “, xâu B= “Em”. Khẳng định nào sau đây đúng?

A. A>B
B.A>=B
C.AD.A=B
Câu 11: Tham số được khai báo trong thủ tục hoặc hàm được gọi là gì?
A. Tham số hình thức
B. Tham số thực sự
C. Biến cục bộ
D. Biến toàn bộ
Câu 12: Đoạn chương trình sau in ra kết quả là:
int main()
{
string s= “truong dong da”;
t= s.substr(7,4);
cout<return 0;
}
A. “dong”
B.t= “ g don”
C.t= “ong d”
D.t= “ng do”
Câu 13: Chọn khai báo đúng, đề khai báo mảng a gồm 20 số nguyên
A.int a[20];
B. int a;
C. int a[1..20];
D. int A[1...20];
Câu 14: Nếu hàm EOF(<tên biến tệp>) cho giá trị là TRUE thì con trỏ tệp nằm ở vị trí


A. đầu dòng.

B. cuối dòng;
Câu 15: Nhận xét nào sau đây đúng với tệp:
A. Bị mất khi tắt nguồn điện
C. Được lưu trữ ở RAM

C. cuối tệp;

D. đầu tệp;

B. Bị giới hạn kích thước
D. Khơng bị mất khi tắt nguồn điện

Câu 16: Để biết con trỏ tệp đã ở cuối dòng của tệp f hay chưa, ta sử dụng hàm:
A. eof(f)
B. eof(f, ‘trai.txt’)
C. foe(f)
D. eoln(f)
Câu 17: Cho chương trình sau:
int main(){
int n, i, tong=0;int a[20];
cout<<"Nhap n: ";cin>>n;
for(i=1; i<=n; i++){cout<<"\nNhap phan tu "<for(i=1; i<=n; i++){tong+=a[i];}
cout<return 0;}
Hỏi chương trình đó dùng làm gì?
A. Tính hiệu các phần tử trong mảng
B. Liệt kê phần tử trong mảng
C. Tính tổng các số lẻ trong mảng
D. Tính tổng các phần tử trong mảng

Câu 18: Trong ngơn ngữ lập trình C++, xâu khơng có kí tự nào gọi là xâu?
A. Xâu trắng;
B. Khơng phải là xâu kí tự.
C. Xâu khơng;
D. Xâu rỗng;
Câu 19: Khẳng định nào sau đây là đúng?
A. Cả thủ tục và hàm đều có thể có tham số hình thức.
B. Chỉ có thủ tục mới có thể có tham số hình thức.
C. Chỉ có hàm mới có thể có tham số hình thức.
D. Thủ tục và hàm nào cũng phải có tham số hình thức.
Câu 20: Thao tác nào sau đây với tệp là hợp lệ :
A. Mở tệp –> đọc/ghi dữ liệu-> đóng tệp
B. Mở tệp-> đóng tệp
C. Mở tệp-> đọc/ghi dữ liệu
D. Đọc/ghi dữ liệu-> đóng tệp
Câu 21: Để khai báo thủ tục trong C++ bắt đầu bằng từ khóa
A.Program.
B. Procedure
C. void.
D. Var.
Câu 22: Có 3 giá trị x, y, z. Để ghi 3 giá trị đó vào tệp f thì ta viết:
A. f<B. cin(f, x:5 , y:5, z);
C. cout<D.f.cout<<(x, ‘ ’,y, ‘ ’,z);
Câu 23: Hãy chọn phương án ghép đúng . Kiểu của một hàm được xác định bởi
A. Kiểu của các tham số
B. Kiểu giá trị trả về
C. Tên hàm D. Địa chỉ mà hàm trả về
Câu 24: Đâu không phải lợi ích của chương trình con:

A.
Giúp giảm thời gian chạy chương trình.
B.

Tránh được việc phải lặp đi lặp lại một dãy lệnh.

C.
Phục vụ cho q trình trừu tượng hóa.
D.
Mở rộng khả năng ngôn ngữ.
Câu 25: Cho 2 xâu S1= “nam moi” và S2= “2022”; khi đó S1 + “ - ” + S2 cho kế quả nào?
A. “2022 nam moi”
B. “nam moi_2022”
C. “nam moi 2022”
D. “_nam moi2022”
Câu 26: Cho a= “tan ke” . Để in ký tự 'n' ta viết như thế nào?
A. read(a[3]);
B. read(a);
C.cout<D. write(a(3));
Câu 27: Cho xâu S= “hoc le” . hàm s.length() kết quả là :
A. 7
B. 6
C. 5
D. 8
Câu 28: Cho xâu A= 'ca nau' và xâu B= 'ca nanh' phép so sánh nào đúng?
A. AB. A=B
C. A>B
D. A<>B

Câu 29: Phát biểu nào dưới đây về chỉ số của mảng là phù hợp nhất?
A. Dùng để truy cập đến một phần tử bất kì trong mảng
B. Dùng để quản lí kích thước của mảng
C. Dùng trong vịng lặp với mảng
D. Dùng trong vịng lặp với mảng để quản lí kích thước của mảng
Câu 30: Khai báo mảng một chiều nào sau đây đúng?
A. -Cú pháp: < Kiểu dữ liệu> <Tên biến mảng ><[số phần tử]>;
B. -Cú pháp: <Tên biến mảng ><Kiểu dữ liệu><[số phần tử]>;
C. -Cú pháp: < Kiểu dữ liệu> <Tên biến mảng >;
D. -Cú pháp: < Kiểu dữ liệu><[số phần tử]>;


Câu 31: Khai báo nào đúng mảng một chiều trong C++?
A. int arr [10];
B. int arr;
C. arr {10};
D. mảng arr [10];
Câu 32: Khi viết chương trình con, khơng cần trả về giá trị qua tên của nó ta dùng :
A. Thủ tục.                      B. Chương trình chính   
C. Hàm.                         D. Chương trình con.
Câu 33: Đâu là câu lệnh đúng cú pháp?
A. for (int i=0; iB. for (int i=0;i+=3; iC. for (iD. for (i++;int i=0; iCâu 34: Khi khai báo biến xâu, ta sử dụng kiểu dữ liệu:
A.String
B.Float
C.Int
D.Char

Câu 35: Dùng hàm nào sau đây để đổi kí tự in hoa sang in thường:
A.tolower
B.Replace
C.Compare
D.toupper
Câu 36: Cho S= “THPT Luc Nam” và t= “55nam”. Sau khi thực hiện thủ tục S.insert(6,t) thì:
A.
S= “THPT L55namuc Nam”
B.
S= “THPT L55nam uc Nam”
C.
S= “THPT Lu55namc Nam”
D.
S= “THPT Luc 55nam Nam”
Câu 37: S=“500 ki tu”, hàm Length(s) cho giá trị bằng:
A.9
B.500
C.“5”
D.“500”
Câu 38: Để khai báo thủ tục trong C++ bắt đầu bằng từ khóa
A.Program.
B. Procedure
C. void.
D. Var.
Câu 39: Có 3 giá trị x, y, z ở trong tệp. Để đọc 3 giá trị đó từ tệp g thì ta viết:
A. cin>>x>>y>>z;
B. g>>x>>y>>z;
C. cin>>g. ‘x’, ‘y’, ‘z’); D.g.cout<<(x, ‘ ’,y, ‘ ’,z);
Câu 40: Chương trình con thường được chia làm mấy loại?
A. 2

B. 4
C. 3
D. 1
Câu 41: Kiểu dữ liệu trả về của hàm
A. Kiểu int.
B. Kiểu float
C. Kiểu string.
D. Cả A, B, C đều đúng.
Câu 42: Hãy chọn phương án ghép đúng. Kiểu của một hàm được xác định bởi
A. Kiểu của các tham số
B. Kiểu giá trị trả về
C. Tên hàm
D. Địa chỉ mà hàm trả về
Câu 43: Khai báo mảng một chiều nào sau đây đúng trong C++?
A. double A[100];
B. var A : array[1…100]of byte;
C. var A = array[1..100]of double;
D. var A = array[1…100]of byte;
Câu 44: Với khai báo: Int A[100]; nhóm lệnh nào dùng để in giá trị của A ra màn hình trong C++?
A. for i= 1 to 100 do read(A[i]);
B. for i= 1 to 100 do readln(A[i]);
C. For( i=1,i<= 100, i++) cout<D. For( i=0;i<= 99;i++) cout<Câu 45: Cho 2 xâu S1= “abcd” và S2= “ABC”; khi đó S2 + “_” + S1 cho kế quả nào?
A. “ABCabcd”
B. “abcdABC”
C. “ABC_abcd”
D. “abcd _ABC”
Câu 46: Cho a= “chao xuan” . Để in ký tự 'x' ta viết như thế nào?
A. read(a[5]);

B. read(a);
C.cout<D. cout(a(5));
Câu 47: Cho chương trình sau:
int main(){
int n, i, tong=0;int a[20];
cout<<"Nhap n: ";cin>>n;
for(i=1; i<=n; i++){cout<<"\nNhap phan tu "<for(i=1; i<=n; i++){tong+=a[i];}
cout<return 0;}
Hỏi chương trình đó dùng làm gì?
A.Tính hiệu các phần tử trong mảng
C. Tính tổng các số lẻ trong mảng
B. Liệt kê phần tử trong mảng
D. Tính tổng các phần tử trong mảng
Câu 48: Để khai báo số phần tử của mảng trong C++, người lập trình cần:
A. khai báo một hằng số là số phần tử của mảng
B. khai báo kiểu dữ liệu,tên mảng,số phần tử
C. khai báo chỉ số kết thúc của mảng
D. khơng cần khai báo gì, hệ thống sẽ tự xác định
Câu 49: Phát biểu nào sau đây về mảng là khơng chính xác?
A. Chỉ số của mảng khơng nhất thiết bắt đầu từ 1
B. Có thể xây dựng mảng nhiều chiều
C. Xâu kí tự cũng có thể xem như là một loại mảng
D. Độ dài tối đa của mảng là 255
Câu 50: Mảng là kiểu dữ liệu biểu diễn một dãy các phần tử thuận tiện cho:
A. chèn thêm phần tử
C. xóa một phần tử
B. truy cập đến phần tử bất kì

D. chèn thêm phần tử và xóa phần tử


Câu 51: Đâu không là đặc điểm của mảng ?
A. Dễ dàng thao tác dữ liệu.
C. Mảng có độ dài cố định.
B. Dễ dàng sắp xếp dữ liệu
D. Trong C++ có 3 loại mảng
Câu 52: Xác định kết quả của đoạn chương trình sau: string S="THPT Uong Bi "; cout<A.THPTUong
B. Uong bi
C. THPT Uong
D. Uong Bi
TỰ LUẬN:
Câu 1: Nhập mảng 1 chiều A gồm n số nguyên, tính tổng các phần tử của mảng. In kết quả lên màn hình.
#include <bits/stdc++.h>
using namespace std;
int main()//Bai 1
{
int n, i, tong=0;int a[20];
cout<<"Nhap n: ";cin>>n;
for(i=1; i<=n; i++)
{
cout<<"\nNhap phan tu "<cin>>a[i];
}
for(i=1; i<=n; i++)
{tong+=a[i];}
cout<return 0;

}
Câu 2: Nhập mảng 1 chiều A, gồm n số nguyên, đếm xem trong mảng có bao nhiêu phần tử lẻ, bao nhiêu
phần tử chẵn.
#include <bits/stdc++.h>
using namespace std;
int main()// Bai 2
{
int n, i, dc=0; int a[20];
cout<<"Nhap n: ";
cin>>n;
for(i=1; i<=n; i++)
{
cout<<"\nNhap phan tu "<cin>>a[i];
}
for(i=1; i<=n; i++)
if (a[i]%2==0) dc=dc+1;
cout<return 0;
}
Câu 3: Nhập vào xâu ký tự s1 chỉ gồm các ký tự in thường, đếm xem trong xâu có bao nhiêu ký tự dấu cách,
tạo sâu s2 gồm những ký tự của xâu s1 nhưng được viết hoa. In xâu s2.
#include <bits/stdc++.h>
using namespace std;
int main()// Bai 3
{
int n, i, dc=0;


string s1,s2="";

cout<<"Nhap xau s1=: ";
getline(cin,s1); n=s1.length();
for(i=0; i{
if (s1[i]== ' ') dc++;
}
cout<<"So dau cach la: "<for (i=0;is2+=toupper(s1[i]);
cout<<" \nXau chu hoa s2= "<return 0;
}
Câu 4: Nhập xâu a, kiểm tra xem xâu a có là xâu đối xứng hay khơng?
#include <bits/stdc++.h>
using namespace std;
int main()// Bai 4
{
int n, i;
string s1,s2;
cout<<"Nhap xau s1=: ";
getline(cin,s1); n=s1.length();
s2=””;
for(i=n-1; i>=0; i--)
s2=s2+s1[i];
if (s1==s2) cout<else cout<}

return 0;


Câu 5: Cho tệp baitap.inp chứa 3 giá trị là 3 cạnh tam giác. Tính chu vi và diện tích tam giác, ghi kết quả vào
tệp ketqua.inp
#include <bits/stdc++.h>
using namespace std;
int main()// Bai 5
{
int a,b,c,cv,dt;
ifstream f1(“baitap.inp”);
ofstream f2(“ketqua.inp”);
f1>>a>>b>>c;
cv=a+b+c;
dt=sqrt(cv/2*(cv/2-a)*(cv/2-b)*(cv/2-c));
f2<return 0;

}
Câu 6: Cho tệp dulieu.inp gồm 10 dòng chứa 10 số ngun. Tính tổng của 10 số đó, và ghi kết quả vào tệp
ketqua.inp
#include <bits/stdc++.h>
using namespace std;


int main()// Bai 6
{
int x,tong=0;
ifstream f1("dulieu.inp");
ofstream f2("ketqua.inp");
while (f1>>x)
tong=tong+x;
f2<

return 0;
}
Cho chương trình
Câu 7:
Câu 8:
#include<bits/stdc++.h> #include<bits/stdc++.h>
using namespace std;
using namespace std;
void Tinh(int &x, int y) void Tich(int &a, int &b)
{
{
a=a*a;
int k;
b=b*10;
k=5;
}
x=x+k;
y=y+k;
int main()
}
{
int main()
int m,n;
{
m=2;n=10;
int a,b,S;
Tich(m,n);
a=30;b=50;
cout<<"m="<Tinh(a,b);

<<" "<< "n="<S=a+b;
return 0;
cout<<"tong la:"<}
return 0;
}

Câu 9:
#include<bits/stdc++.h>
using namespace std;
int giaithua(int a)
{
int s, i;
s=1;
for (i=1; i<=a;i++)
s=s*i;
return s;
}
int main()
{
int x,y;
x=4;
y=giaithua(x);
cout<<"gia tri la:"<return 0;
}

Câu 10:
#include<bits/stdc++.h>

using namespace std;
int luythua(int a, int b)
{
int p,i;
p=1;
for (i=1; i<=b;i++)
p=p*a;
return p;
}
int main()
{
int x,y,S;
x=2; y=5;
S=luythua(x,y);
cout<<"gia tri la:"<return 0;
}


Câu hỏi:
a) Xác định đoạn lệnh chương trình con? Tên chương trình con? Loại chương trình con?
b) Xác định biến cục bộ? biến tồn cục?
c) Xác định tham số hình thức, tham số thực sự?
d) Kết quả hiện lên màn hình là gì? Giải thích?



×