Câu hỏi trắc nghiệm :
1. Để khai báo kiểu xâu trực tiếp ta sử dụng cú pháp nào?
a. Var <tên biến> : <tên kiểu> ;
b. Var <tên biến> : String[độ dài của lớn nhất của xâu] ;
c. Var <tên biến> = <tên kiểu>;
d. Var <tên biến> = String[độ dài lớn nhất của xâu];
2. Trong các khai báo sau, khai báo nào đúng?
a. Var hoten : string[27];
b. Var diachi : string(100);
c. Var ten = string[30];
d. Var ho = string(30);
3. Khai báo nào trong các khai báo sau là sai khi khai báo xâu kí tự?
a. Var s_s : String;
b. Var s1 : str[256];
c. Var abc: string[100];
d. Var cba: string[1];
4. Trong các phát biểu sau, phát biểu nào là Sai?
a. Xâu không có kí tự nào được gọi là xâu rỗng;
b. Thao tác nhập xuất đối với dữ liệu kiểu xâu như nhập xâu hay xuất giá trị của biến kiểu dữ liệu chuẩn;
c. Xâu có chiều dài không được vượt quá 250;
d. Có thể tham chiếu đến từng kí tự trong xâu.
5. Trên dữ liệu kiểu xâu có các phép toán nào?
a. Phép toán so sánh và phép gán;
b. Phép so sánh và phép nối;
c. Phép gán và phép nối;
d. Phép gán, phép nối và phép so sánh;
Giúp mk câu này vs....
Chương trình sau đây thực hiện việc gì?
Var A: array[1..20] of real;
...
dk:=0;
For i:= 1 to 20 do
if A[i] = 5 then dk:=dk+1; Writeln(dk);
a In ra màn hình biến dk, và dk có giá trị là 0
b Đếm xem trong mảng A có bao nhiêu phần tử bằng 5
c In các phần tử bằng 5 trong mảng A ra màn hình
d Tính tổng các giá trị bằng 5 trong mảng A
Có thể xem kiểu dữ liệu xâu là mảng một chiều, khi đó, một phần tử của mảng là một:
A. số C. Kí tự
B. xâu D. tất cả câu trên
trong ngôn ngữ lập trình pascal, đoạn chương trình sau thực hiện việc gì
var a : array[0..50] of real ;
k := 0 ;
for i:= 1 to 50 do
if a[i] > a[k] then k:= i;
Phát biểu nào dưới đây là sai?
A. Xâu là một dãy các kí tự trong bảng mã ASCII. Kiểu xâu là một kiểu dữ liệu có cấu trúc.
B. Có thể xem mỗi xâu có cấu trúc giống như một mảng một chiều mà mỗi phần tử của mảng là một kí tự trong bảng mã ASCII, được đánh chỉ số từ 1.
C. Số lượng kí tự trong một xâu chính là độ dài của xâu.
D. Các phép toán thao tác với xâu tương tự như các phép toán thao tác với mảng.
Mọi người lại giúp tôi đi
Program HelloWorld(output);
Var a,b :array[1..100] of integer;
i,n,s,d:integer;
begin
write(‘Nhap n= ’); readln(n);
For i:=1 to n do
Begin
Write(‘a[‘,i,’]=’); readln(a[i]);
End;
s:=0;
for i:=1 to n do
if (a[i]mod 2=1) then s:=s+a[i];
write(‘tong so le ’,s);
d:=0;
for i:=1 to n do
if (a[i]mod 3=0) then d:=d+1;
write(‘so luong so chia het cho 3: ’,d);
For i:=1 to n do b[i]:=2*a[i];
For i:=1 to n do write(b[i]:4);
readln
end.
code này sai chỗ nào vậy mn ?, giúp em sửa với ạ.
1. Cho khai báo: VAR Mang1d : ARRAY[-Nmax..Nmax] OF Integer; Khai báo trên ĐÚNG trong trường hợp nào?
a Nmax phải là kiểu số nguyên hoặc kiểu ký tự hoặc kiểu logic.
b Mọi trường hợp.
c Nmax là một hằng số nguyên đã được khai báo trước đó.
d Nmax là một biến nguyên đã được khai báo trước đó.
2. Cho mảng A gồm N số nguyên. Đoạn chương trình sau thực hiện công việc gì?
Dem:=0;
For i:=1 TO N DO
IF A[i]>=0 THEN dem:=dem+1;
Write(dem);
a Cho biết số lượng các số nguyên dương
b Cho biết số lượng các số nguyên không âm
c Tính tổng các số nguyên dương
d Kiểm tra phần tử thứ i là số âm hay dương
3. Đoạn chương trình sau thực hiện công việc gì?
St:= ‘’; {rỗng}
FOR i:=Length(S) DOWNTO 1 DO St:=S[i]+St;
a In xâu đảo của S ra màn hình c In xâu S ra màn hình
b Tạo xâu đảo của xâu S d Tạo xâu St giống hệt xâu S
4. Chọn khai báo Xâu mà không hợp lệ:
a Var S:string[200];
b Var S:string;
c Type Xau = string[300];
Var S: Xau;
d Type Xau = string[20];
Var S: Xau;
5. Cho S là biến xâu, câu lệnh sau
for i:=length(S) downto 1 do write(S[i]); thực hiện công việc:
a Đưa ra màn hình xâu S
b Đưa ra màn hình mỗi kí tự của xâu S trên một dòng
c Đưa ra màn hình xâu đảo ngược của S
d Đưa ra màn hình các chữ cái trong xâu từ chữ cái đầu tiên đến chữ cái cuối cùng
6. Cho S là biến xâu, câu lệnh sau
for i:=1 to length(S)-1 do S[i+1]:=S[i]; thực hiện công việc:
a Gán giá trị của kí tự cuối cùng cho các kí tự còn lại của xâu
b Dịch chuyển các kí tự của xâu lui một vị trí
c Dịch chuyển các kí tự của xâu lên một vị trí
d Gán giá trị của phần tử đầu tiên cho các phần tử còn lại của xâu S
7. Cho 2 xâu: S1= ‘Cuu hoc sinh Dong Khanh’; S2= ‘Dong Khanh’; Kết quả của hàm Pos (S1, S2) là:
a Pos (S1, S2) = 0. c Pos (S1, S2) = 11.
b Pos (S1, S2) = 7. d Pos (S1, S2) = 14.
8. Cho xâu s1 = 'pascal', xâu s2 có giá trị nào trong các giá trị sau để biểu thức s1< s2 nhận giá trị TRUE
a 'pascan' b 'Pascal' c 'PASCAL' d 'Pascan'
9. Cho s:= 'Hoa học trò' thì length(s) bằng bao nhiêu?
a 9 b 11 c 12 d 13
10. Cho chương trình sau:
Program BT;
var S : String;
i : byte; begin
write('Nhap xau S: ');
readln(S);
for i:= length(S) downto 1 do write(S[i]);
readln;
end.
Chương trình trên thực hiện công việc gì ?
a Nhập một xâu từ bàn phím và đưa ra màn hình xâu đó nhưng viết theo thứ tự ngược lại.
b Nhập một xâu từ bàn phím và đưa ra màn hình xâu đó nhưng viết theo thứ tự ngược lại và độ dài xâu đó.
c Nhập một xâu từ bàn phím và đưa ra màn hình độ dài xâu đó.
d Nhập một xâu từ bàn phím và đưa ra màn hình xâu đó.
Câu 15
Cho biết màn hình xuất hiện như thế nào với đoạn chương trình sau:
d:=0;
For i:=1 to 10 do
Begin
i:= i+1;
Write(d,' ');
End;
A. 10 |
B. 11 |
C. 1 2 3 4 5 6 7 8 9 10 |
D. 0 0 0 0 0 |
Câu 24
Cho sâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1, s2, 2) thì:
A. s1 = ‘123’; s2 = ‘12abc’ |
B. s1 = ‘ab123; s2 = ‘abc’ |
C. s1 = ‘1abc23’; s2 = ‘abc’ |
D. s1 = ‘123’; s2 = ‘a123bc’ |
Câu 31
Vòng lặp nào có biến đếm tự động tăng lên một đơn vị sau một lần thực hiện câu lệnh?
A. For …to…do… |
B. For …downto…do… |
C. While…do… |
D. Repeat…Until… |
Câu 32
xâu kí tự không chứa kí tự nào gọi là:
A. Xâu không; |
B. Xâu trắng; |
C. Không phải là xâu kí tự |
D. Xâu rỗng; |
Câu 33
Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì ?
for i := length(str) downto 1 do write(str[i]) ;
A. In từng kí tự ra màn hình theo thứ tự ngược |
B. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên. |
C. In từng kí tự xâu ra màn hình |
D. In xâu ra màn hình |
Câu 34
hàm Upcase(ch); cho kết quả là:
A. Xâu ch toàn chữ thương; |
B. Biến ch thành chữ thường; |
C. Chữ cái in hoa tương ứng với ch; |
D. Xâu ch toàn chữ hoa; |
Câu 35
Với khai báo như sau:
Type mang=array[1..100] of integer;
Var a,b:mang;
c:array[1..50] of integer;
Câu lệnh nào dưới đây đúng nhất?
A. b:=c; |
B. a:=c; |
C. a:=b; |
D. c:=b; |
Câu 36
Cho đoạn chương trình sau
If(a< >0) then x:=9 div a
Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?
A. x=0; |
B. x là không xác định |
C. x=1 |
D. x= -1 |
Câu 37
Cho St là biến chuỗi, sau khi thực hiện hai lệnh :
St:= Copy( 'PASCAL VERSION 5.5' , 8, 7) ;
Write(St);
- Kết qủa in lên màn hình là:
A. VERSION |
B. PASCAL |
C. 5.5 |
D. VERSION 5.5 |
Câu 38
với xâu kí tự ta có thể:
A. So sánh hai xâu kí tự, gán biến xâu cho biến xâu và gán một kí tự cho biến xâu; |
B. Gán biến xâu cho biến xâu và gán một kí tự cho biến xâu; |
C. So sánh và gán một biến xâu cho biến xâu. |
D. So sánh hai xâu kí tự; |
Câu 39
Var A; string[20]; Xâu A có thể chứa?
A. 256 kí tự |
B. 20 kí tự |
C. Báo lỗi |
D. 255 kí tự |
Câu 40
Đoạn chương trình sau đưa ra màn hình kết quả gì?
For i:=1 to 10 do write(I,’’);
A. Đưa ra 10 dấu cách |
B. 12345678910 |
C. 10 9 8 7 6 5 4 3 2 1 |
D. Không đưa ra kết quả gì |
Câu 41
Đoạn chương trình sau đây dùng để thực hiện công việc gì?
For i:=1 to n do
If i mod 2 = 0 then Writeln(A[i],’ ‘);
A. In ra màn hình giá trị của các phần tử có chỉ số chẵn trong mảng |
B. In ra màn hình giá trị của các phần tử có giá trị chẵn trong mảng |
C. In ra màn hình tất cả các phần tử trong mảng |
D. Tất cả đều đúng |
Câu 42
Cho đoạn chương trình sau
If (a<>0) then x:=9 div a Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?
A. x=0; |
B. x= -1 |
C. x là không xác định |
D. x=1 |
Câu 43
thủ tục Insert(S1,S2,n) thực hiện công việc gì?
A. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S1; |
B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S2; |
C. Chèn thêm xâu S2 vào xâu S1 bắt đầu từ vị trí n của S1; |
D. Chèn thêm xâu S2 vào xâu S2 bắt đầu từ vị trí n của S1; |
Câu 44
Cho khai báo biến:
Var A : array[1..5] of Integer;
Chọn lệnh đúng :
A. A := 10 ; |
B. A[2] := -6 ; |
C. A(3) := 6 ; |
D. A[1] := 4/3 ; |
Câu 45
Hai xâu kí tự được so sánh dựa trên:
A. Mã của từng kí tự trong các xâu lần lượt từ trái sang phải; |
B. Độ dài tối đa của hai xâu; |
C. Số lượng các kí tự khác nhau trong 2 xâu; |
D. Độ dài thực sự của hai xâu; |
Câu 46
Để tìm vị trí xuất hiện đầu tiên của xâu ‘hoa’ trong xâu s ta có thể viết?
A. S1:=’hoa’; I:=pos(s1,’hoa’); |
B. I:=pos(s,’hoa’); |
C. I:=pos(‘hoa’,’hoa’); |
D. I:=pos(’hoa’,s); |
Câu 47
phần tử đầu tiên của xâu kí tự mang chỉ số là:
A. Không có chỉ số |
B. 0 |
C. Do người lập trình khai báo |
D. 1 |
Câu 48
Var A: array[1..10] of integer;
Chọn câu lệnh sai trong các câu lệnh sau:
A. A[1]:= 2.5; |
B. A[4]:=0; |
C. A[2]:= 30; |
D. A[3]:=-5; |
Câu 49
Sau khi thực hiện đoạn chương trình sau, thì biến X có giá trị là bao nhiêu?
A:= 4 ; B: = 1; X:= 2 ;
IF A + B > 5 THEN X := X + A + B; WRITE (X);
A. 7 |
B. 0 |
C. 2 |
D. 5 |
Câu 50
để đếm số kí tự là kí tự chữ số trong xâu s, đoạn chương trình nào trong các đoạn chương trình sau thực hiện công việc này (biến d dùng để đếm)
A. d:=0; for i:=1 to length(s) do if (s[i] =’0’) and(s[i]=’9’) then d:=d+1; |
B. d:=0; for i:=1 to length(s) do if (s[i] >=0) and(s[i]<=9) then d:=d+1; |
C. d:=0; for i:=1 to length(s) do if (s[i] =0) and (s[i]=9) then d:=d+1; |
D. d:=0; for i:=1 to length(s) do if (s[i] >=’0’) and(s[i]<=’9’) then d:=d+1; |
em xin cảm ơn .