NEW
Font size
Worksheets1F COMP
Total questions: 63
Worksheet time: 5hrs 15mins
จงเขียนผลตอบสนองของโปรแกรมดังต่อไปนี้
#include
int main(void){
function(5);
}
void function(int i){
printf("%d ", i);
if(i==0) return;
else function(i-1);
}
0 1 2 3 4 5
5 4 3 2 1
1 2 3 4 5
5 4 3 2 1 0
จาก Flow chart ที่กำหนด จงหาค่า val , n และวนรอบกี่ครั้ง หลังจากจบโปรแกรม ให้ค่า y=0 ,x = 1 , k=2 ,b=9
val =32 ,n=9 ;วน 4รอบ
val=28 ,n=11 ;วน 5รอบ
val =28 ,n=9 ;วน 4รอบ
val=22 ,n=9 ;วน 4รอบ
ถ้า A = 4 และ B = 2เมื่อออกจากวงรอบ(loop) ผลลัพธ์จะเป็นอะไร
B = 8
B= 16
B=32
B=64
ไม่มีข้อถูก
ถ้า A = 1 และ B = 2เมื่อออกจากวงรอบ(loop) ผลลัพธ์จะเป็นอะไร
B = 0
B=2
B=4
B=6
ไม่มีข้อถูก
ถ้า A = 5 และ B = 1เมื่อออกจากวงรอบ(loop) ผลลัพธ์จะเป็นอะไร
B=7
B=9
B=11
B=13
ไม่มีข้อถูก
ถ้า A = 1 และ B = 2เมื่อออกจากวงรอบ(loop) ผลลัพธ์จะเป็นอะไร
B=0
B=2
B=4
B=8
ไม่มีข้อถูก
ความแตกต่างระหว่างการทำงานของคำสั่ง While และ Do-While คืออะไร
คำสั่ง While ทำคำสั่งก่อนแล้วจึงตรวจสอบเงื่อนไข ส่วนคำสั่ง Do-While ตรวจสอบเงื่อนไขก่อนถ้าเป็นจริงจึงทำคำสั่งที่ต้องการ
คำสั่ง While ทำคำสั่งก่อนแล้วจึงตรวจสอบเงื่อนไข ส่วนคำสั่ง Do-While ตรวจสอบเงื่อนไขก่อนถ้าเป็นเท็จจึงทำคำสั่งที่ต้องการ
คำสั่ง While ตรวจสอบเงื่อนไขก่อนถ้าเป็นจริงจึงทำคำสั่งที่ต้องการ ส่วนคำสั่ง Do-While ทำคำสั่งก่อนแล้วจึงตรวจสอบเงื่อนไข
คำสั่ง While ตรวจสอบเงื่อนไขก่อนถ้าเป็นเท็จจึงทำคำสั่งที่ต้องการ ส่วนคำสั่ง Do-While ทำคำสั่งก่อนแล้วจึงตรวจสอบเงื่อนไข
ทั้งสองคำสั่งทำงานเป็นวงวนเหมือนกันไม่แตกต่างกัน
จากคำสั่งต่อไปนี้ ค่า n[3][3] มีค่าเท่ากับเท่าใด
for (i=0; i<3; i++) {
for (j=0; j<3; j++) {
n[j][i] = i;
}
}
0
1
2
3
ให้หาค่า y สุดท้ายที่ได้จาก algorithm ต่อไปนี้
---------------------------------------------------
x = 5
y = 1
while (x > 0) {
x = x - 1
y = y * x
print(y)
}
0
4
10
ไม่มีข้อใดถูก
จาก algorithm ด้านล่าง จงเลือกคำตอบที่ถูกที่สุด
-----------------------------------------------------------------------------
i=1 และ j=0
for (i = 1; i <= 4; i = i+1) {
if ((i - 1) / 2 == 0){
print(i)
j = i+1;
}
}
โปรแกรมนี้พิมพ์ค่า i ทั้งหมด 5 ครั้ง
ค่า i ค่าสุดท้ายคือ 4
ค่า j สุดท้าย คือ 2
ค่า j สุดท้าย คือ 6
จาก algorithm ด้านล่า่ง โปรแกรมจะทำงานวน loop ทั้งหมดกี่รอบ
--------------------------------------------------------------------------
กำหนด x=0, y = 1, z = 5
while(x < 6) {
y = z + x
if (y < 11) {
x = y + x
}
}
1
2
3
5
ข้อใดต่อไปนี้ได้ค่าตัวแปร sum เท่ากับโปรแกรมต่อไปนี้
sum = 0;
for(i=1; i<=100; i++)
{
sum = sum +i;
}
sum = 0;
j = 0;
for(i=0; i<100; i++)
{
j = i+1;
sum = sum +j;
}
sum = 0;
j = 0;
for(i=1;i<100;i++)
{
j = i+1;
sum = sum +j;
}
sum = 0;
for(i=1;i<100;i++)
{
sum = sum +i;
}
sum = 0;
for(i=0;i<=99;i++)
{
sum = sum +i;
}
sum = 0;
for(i=0;i<100;i++)
{
sum = sum +i;
}
โปรแกรมที่ให้มีการทำงานวนรอบทั้งหมดกี่รอบ และแต่ละรอบ a มีค่าเท่ากับเท่าไร
int a=10;
while (a >= 1)
{
a = a - 2;
}
10 รอบ แต่ละรอบ a มีค่าเท่ากับ 1,2,3,4,5,6,7,8,9 และ 10
10 รอบ แต่ละรอบ a มีค่าเท่ากับ 10,9,8,7,6,5,4,3,2 และ 1
5 รอบ แต่ละรอบ a มีค่าเท่ากับ 9,7,5,3 และ 1
5 รอบ แต่ละรอบ a มีค่าเท่ากับ 10,8,6,4 และ 2
5 รอบ แต่ละรอบ a มีค่าเท่ากับ 2,4,6,8 และ 10
กำหนดให้
int i;
for (i = 1;i < 10; i++){
if ( i > 7 ) continue;
if ( i == 5 ) break;
printf(”KORAT”);
}
สตริง KORAT จะถูกพิมพ์ทั้งหมดกี่ครั้ง?
10
6
4
5
7
ข้อใดมีความหมายตรงกับคำว่า Inifinite Loop มากที่สุด
ผิดเงื่อนไขโปรแกรมจะไม่ทำงานภายในลูป
ทำงานวนซ้ำตามที่กำหนดค่าตัวแปรในโปรแกรม
ทำงานวนซ้ำตามที่กำหนดในโปรแกรมโดยมีจุดสิ้นสุด
ทำงานวนซ้ำตามที่กำหนดในโปรแกรมโดยไม่มีจุดสิ้นสุด
ไม่มีข้อใดถูกต้อง
i = 0;
for (j = -2; j < 3; j++) {
i = j + i++;
} ค่า i จะมีค่าเท่าไร
2
4
6
-6
-4
j = k = 0;
do {
j += k;
k += 2;
} while (k < 20);
อยากทราบว่าค่า j มีค่าเท่าไร
50
60
70
80
90
Recursive Function มีความหมายว่าอย่างไร
คือฟังก์ชันที่ทำงานแบบไม่รู้จบ
คือฟังก์ชันที่มีการเรียกจากภายในฟังก์ชันเอง
คือฟังก์ชันที่มีเงื่อนไขจึงจะออกจากโปรแกรมได้
คือฟังก์ชันสำหรับทำงานในโปรแกรมระบบเท่านั้น
Nested Loops มีความหมายอย่างไร
คือ Loop ทีโปรแกรมวนไม่รู้จบ
คือ Loop ที่มีคำสั่งประเภทเดียวกันซ้อนอยู่
คือ Loop ที่มีคำสั่งวนซ้อนกันมากกว่า 1 Loop
คือ Loop เฉพาะที่มีเงื่อนไขสำหรับออกจากโปรแกรม
กำหนดให้โปรแกรมมีขั้นตอนการทำงานดังนี้
เริ่มต้น
x = 1
ทำซ้ำ
x = x + 1
จนกระทั่ง x > 5
จบ
ถ้าคอมพิวเตอร์ทำโปรแกรมนี้จนจบ แล้วทำให้ข้อใดเป็นจริง
x มีค่า 1
x มีค่า 5
x มีค่า 6
x มีค่า 7
x มีค่า 8
กำหนดให้โปรแกรมมีขั้นตอนการทำงานดังนี้
เริ่มต้นโปรแกรม
รับค่า x และ y
ทำซ้ำ
ถ้า x > y แล้ว
{ แสดงค่า x ; x = x – 1 ; }
จนกระทั่ง x = y
จบโปรแกรม
ถ้าคอมพิวเตอร์ทำโปรแกรมนี้จนจบ โดยผู้ใช้ใส่ค่า 5 และ 1 แล้วจะมีการแสดงค่าอะไร
5
5 1
5 4 3 2
5 4 3 2 1
5 4 3 2 1 0
กำหนดให้โปรแกรมมีขั้นตอนการทำงานดังนี้
BEGIN
sum = 0 ;
FOR count = 1 to n
{ sum = sum + 1 ; write(sum) ; }
END
ถ้าคอมพิวเตอร์ทำโปรแกรมนี้จนจบ แล้วจะมีการแสดงค่าอะไร
0 1 2 3 4 ไปจนถึง n
1 2 3 4 ไปจนถึง n
0 1 3 4 7 ไปจนถึง n + (n + 1)
1 3 4 7 ไปจนถึง n + (n + 1)
1 3 5 7 ไปจนถึง n
ในการประมวลผลการทำงานของฟังก์ชันแบบเรียกซ้ำ สิ่งสำคัญที่จำเป็นต้องทราบคือข้อใด
จุดเริ่มต้นของการทำงาน
จุดสิ้นสุดการทำงาน
ค่าเริ่มต้นของการทำงาน
นิพจน์ทั่วไปที่ไม่เรียกซ้ำ
ในการหาค่าของ n ตัวแรกที่ทำให้ผลบวกของอนุกรม 1 + 2 +3 +..+ n > 15 เป็นจริง ถ้าตรวจสอบเงื่อนไข ผลบวก > 15 ในการออกจากวงวนหลังจากที่ทำการบวกสะสมค่าของพจน์ โปรแกรมนี้จะวนอยู่ในวงวนกี่เที่ยว
5 เที่ยว
6 เที่ยว
7 เที่ยว
8 เที่ยว
จาก psuedocode:
a=0;
while a<20
show a on a screen;
a=a+1
a=0; end ผลลัพธ์ค่า a หลังจาก run เสร็จแล้วคือ
0
20
10
ไมมีคำตอบที่ถูกเนื่องจากโปรแกรมไม่สมบูรณ์
ไม่มีคำตอบที่ถูกเนื่องจากโปรแกรมทำงานไม่หยุด
พิจารณาโปรแกรมต่อไปนี้
S = 0
X = 0
WHILE X < N
BEGIN
S = S + 2
X = X + 1
END
STOP
ถ้า N = 10 เมื่อโปรแกรมวิ่งจนจบ S มีค่าเท่าไร
10
12
20
22
ไม่มีข้อใดถูก
ต้องการ บวก 1 ถึง N คำตอบเป็น S โปรแกรมต่อไปนี้ บรรทัดไหนผิด
1 S = 0
2 X = 1
3 WHILE X < N
BEGIN
4 S = S + X
5 X = X + 1
END
STOP
1
2
3
4
5
ให้ N เป็น เลขคู่ มากกว่า 0
ขณะที่โปรแกรมทำงานอยู่ X กับ Y มีค่าตรงกันพร้อนกันได้หรือไม่ ค่าใด
X = 0
Y = N
WHILE X < N
BEGIN
X = X + 1
Y = Y - 1
END
STOP
ไม่มีวันตรงกัน
0
N
N/2
N/2+1
value = -1
while (value < 3)
if (value < 0) then (value = value + 1)
value มีค่าเท่าไร หลังการทำงานของโปรแกรมนี้
-1
0
2
4
ไม่มีคำตอบ เนื่องจากโปรแกรมไม่หยุดทำงาน
จงหาค่าเงื่อนไขที่เพื่อให้ algorithm ได้ผลลัพธ์ต่อไปนี้
1 2 3 4 5 6 7 8
-------------------------------------
count = 1
while ( ___________ ) {
Show count
Show " "
count = count + 1
}
count <=9
count !=9
count+1<=8
count+1 < 10
ถ้าต้องการวนรับอายุของผู้ใช้จนกว่าจะใส่ค่าที่มากกว่าศูนย์ น่าจะตรวจสอบเงื่อนไขก่อนหรือหลังจากรับค่าอายุเก็บไว้ในตัวแปร
ก่อน
หลัง
กลาง
ก่อนหรือกลาง
คำสั่งเทียมต่อไปนี้สอดคล้องกับผลลัพธ์ในข้อใด Set A = 1 Set R = 0.2 FOR I = 1 to N do A = A*(1+R)
A = (1+R)^N
A = A*(1+R)
A = (1+R)*N
A = (1+R)(1+R)
A = A*(1+R)*N
ชุดคำสั่งเทียม DO X = X + 1; WHILE (X < 10); เทียบเท่ากับคำสั่งในข้อใด
FOR N=1 TO 10 X=X+1; END FOR
WHILE (X<10) DO X=X+1; END WHILE
LOOP X=X+1; IF (X>=10) EXIT; END LOOP
REPEAT X=X+1; UNTIL (X<10);
หาผลรวม
หาค่าเฉลี่ย
หาค่าเบี่ยงเบนมาตรฐาน
หาค่ามัธยฐาน
กำหนดให้ == คือ operator ในการตรวจสอบความเท่ากันของข้อมูล
หาค่ามากสุด
นับจำนวนตัวที่มาก
หาว่ามีค่าใน data ที่มีค่าเท่ากับ x หรือไม่
นับจำนวนตัวใน data ที่มีค่าเท่ากับ x
ไม่มีข้อใดถูก
8
9
10
11
ไม่มีข้อใดถูก
ข้อใดผิดสำหรับส่วนโปรแกรมที่ต้องการวนรับตัวอักษรไปเรื่อย ๆ จนกว่าจะกด q โดยที่มีการประกาศตัวแปรให้ใช้ดังนี้ char check=’w’;
while(check!=”q”) { printf(“Enter one char : ”); check=getch( ); }
while(check!=113) { printf(“Enter one char : ”); check=getch( ); }
do { printf(“Enter one char : ”); check=getch( ); } while(check!=‘q’);
for(i=0;check!=‘q’;i++) { check=getche(); }
จากส่วนของโปรแกรมดังต่อไปนี้ ผลลัพธ์ i และ j จะเป็นจะมีค่าเท่าใดเมื่อสิ้นสุดการทำวนรอบ j =0; for (i =0; i < 10 ; i = i+2) j = j+5;
i = 10 j = 50
i = 10 j = 25
i = 12 j = 50
i = 12 j = 25
ไม่มีข้อถูกต้อง
จากส่วนของโปรแกรมดังต่อไปนี้ ผลลัพธ์ i และ j จะเป็นจะมีค่าเท่าใดเมื่อสิ้นสุดการทำวนรอบ j =2; for (i =0; i < 10 ; i = i+2) j = j*2;
i = 10 j =32
i = 10 j = 64
i = 12 j = 32
\i = 12 j =64
ไม่มีข้อถูก
จากส่วนของโปรแกรมดังต่อไปนี้ ผลลัพธ์ i และ j จะเป็นจะมีค่าเท่าใดเมื่อสิ้นสุดการทำวนรอบ j =0; for (i =1; i < 10 ; i = i*2) j = j+2;
i = 10 j = 10
i = 10 j = 8
i = 16 j = 10
i = 16 j = 8
ไม่มีข้อถูก
จากส่วนของโปรแกรมดังต่อไปนี้ ผลลัพธ์ i และ j จะเป็นจะมีค่าเท่าใดเมื่อสิ้นสุดการทำวนรอบ j =1; for (i =1; i < 10 ; i = i*2) j = j*2;
= 8 j = 8
i = 16 j = 8
i = 16 j = 32
i = 8 j = 16
i = 16 j = 16
จากส่วนของโปรแกรมดังต่อไปนี้ ผลลัพธ์ i และ j จะเป็นจะมีค่าเท่าใดเมื่อสิ้นสุดการทำวนรอบ j =0; for (i =1; i < 10 ; i = i*3) j = j+2;
i = 12 j = 8
i = 27 j = 8
i = 12 j =6
i =27 j =6
i =27 j=10
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดการทำงานในวงวน (loop) กี่ครั้ง j = 10; do { j = j-1; } while (j >0);
7
8
9
10
11
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดการทำงานในวงวน (loop) กี่ครั้ง j =10; do { j = j-2; } while (j >0);
3
5
7
9
10
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดการทำงานในวงวน (loop) กี่ครั้ง j = 10; do { j = j/2; } while (j >0);
4
5
6
7
8
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดการทำงานในวงวน (loop) กี่ครั้ง j = 10; while (j >=0) { j = j -1; }
8
9
10
11
12
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดการทำงานในวงวน (loop) กี่ครั้ง j = 10; while (j >=0) { j = j -2; }
4
5
6
7
8
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดการทำงานในวงวน (loop) กี่ครั้ง j = 10; while (j >=0) { j = j - 3 ; }
3
4
5
6
7
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดแสดงข้อความ "Test" กี่ครั้ง for (i =0 ; i < 10 ; i++) { printf ("Test\n"); }
9
10
11
12
ไม่มีข้อถูก
จากส่วนของโปรแกรม ดังต่อไปนี้ จะเกิดแสดงข้อความ "Test" กี่ครั้ง for (i =0 ; i =< 10 ; i++) { printf ("Test\n"); }
9
10
11
12
ไม่มีข้อถูก
จากส่วนของโปรแกรม ดังต่อไปนี้ จะแสดงข้อความ "Test" กี่ครั้ง for (i = 1 ;i< 10 ; i++) { printf ("Test\n"); }
8
9
10
11
ไม่มีข้อถูก
จากส่วนของโปรแกรม ดังต่อไปนี้ จะแสดงข้อความ "Test" กี่ครั้ง for (i =1 ;i<= 10 ; i++) { printf ("Test\n"); }
8
9
10
11
ไม่มีข้อถูก
จากส่วนของโปรแกรม ดังต่อไปนี้ จะแสดงข้อความ "Test" กี่ครั้ง for (i =0 ;i< 10 ; i=i+2) { printf ("Test\n"); }
4
5
6
7
8
จากส่วนของโปรแกรม ดังต่อไปนี้ จะแสดงข้อความ "Test" กี่ครั้ง for (i =1 ;i< 10 ; i=i*2) { printf ("Test\n"); }
2
3
4
5
ไม่มีข้อถูก
a = 4 b = 8
a = 4 b = 7
a =5 b= 8
a =5 b= 7
ไม่มีข้อถูก
a = 5 b =6
a = 5 b =7
a = 4 b = 6
a = 4 b =7
ไม่มีข้อถูก
ในการเขียนโปรแกรมเพื่อใช้ในการคูณ matrix ขนาด m x n จำนวน 2 matrix จะต้องใช้การวนลูปกี่ชั้นในการแก้ปัญหานี้
4 ชั้น
2 ชั้น
1 ชั้น
3 ชั้น
ในการเขียนโปรแกรมเพื่อใช้ในการหาค่าน้อยที่สุดของเลขจำนวนเต็ม ถ้ามีเลขจำนวนเต็มอยู่ 10 ตัว จะต้องมีการวนลูปลึกกี่ชั้น และเกิดการเปรียบเทียบขึ้นกี่ครั้ง
1 ชั้น และเกิดการเปรียบเทียบ 10 ครั้ง
1 ชั้น และเกิดการเปรียบเทียบ 9 ครั้ง
2 ชั้น และเกิดการเปรียบเทียบ 36 ครั้ง
2 ชั้น และเกิดการเปรียบเทียบ 45 ครั้ง
ถ้า ส่วน for(x = 2; x <20; x+=3) อยู่ในโปรแกรมที่แสดงค่า x ทุกค่าจนจบโปรแกรม ค่าของ x ในข้อใดไม่ถูกต้อง
8
14
17
18
สัญลักษณ์ดังรูป หมายถึงสัญลักษณ์ในผังงานข้อใด
การรับหรือแสดงผลโดยไม่ระบุอุปกรณ์
การแสดงผลทางจอภาพ
การแสดงผลข้อมูลเป็นเอกสาร เช่นแสดงผลทางเครื่องพิมพ์
จุดเริ่มต้น หรือจุดสุดท้ายของกิจกรรม
โปรแกรมที่แสดง x = 2; while(x<=100) x++; ให้ผลลัพธ์อย่างไร
โปรแกรมแสดง 1-100
โปรแกรมแสดงเลขคู่ตั้งแต่ 2-100
โปรแกรมแสดงเลขตั้งแต่ 2-100
โปรแกรมแสดงเลขคี่ตั้งแต่ 2-100
