ชื่อผู้ใช้งาน
รหัสผ่าน


คำแนะนำและวิธีใช้
มาตรฐานการเรียนรู้และตัวชี้วัด
คำอธิบายรายวิชา
ผลการเรียนรู้
แบบทดสอบก่อนเรียน
 
 
 
 
 
 
 
 
แบบทดสอบหลังเรียน
   


สถิติผู้เยี่ยมชมเว็บไซต์
Today
8
Yesterday
19
This Month
187
Last Month
746
This Year
3,078
Last Year
8,138
เริ่มนับ : 1 มิ.ย.. 2554
 

เรื่องที่ 5 การควบคุมทิศทางการทำงานเป็นรอบด้วยลูป while


1. จากโปรแกรมข้างล่างนี้ เมื่อส่ง Compile และ Run จะได้ผลลัพธ์ตรงกับข้อใด

#include <stdio.h>
 #include <conio.h>
 void main ()
 {
  int k = 3;
  clrscr ();
  while (k<10) k + +;
  printf (“k = %d”,k);
  getch ();
}

k = 3 
k = 9
k = 10
k = 12


2. นำคำสั่งทางขวามาเติมลงในช่องว่างของโปรแกรมเพื่อคำนวณหาค่าพร้อมแสดงผลลัพธ์เรียงตามลำดับก่อน – หลัง ได้ถูกต้อง

โปรแกรม A
#include
#include
void main ()
{
intn,s;
clrscr();
........
........
{
........
........
}
........
getch();
คำสั่ง
1. n = n+3;
2. n = 3; s = 0;
3. s = s + (n*n);
4. while (n<=16)
5. printf(“Answer = %d”,s);


1, 2, 3, 4, 5
2, 3, 4, 1, 5
2, 4, 3, 1, 5
4, 2, 1, 3, 5


3. จากส่วนของโปรแกรมต่อไปนี้

i = 1;
 f = 1;
 while (i<n)
 {
  i = i + 1;
  f = f*i;
}
ถ้า n = 6 แล้ว ค่าผลลัพธ์สุดท้ายของ f มีค่าเท่าใด

30
120
720
ไม่มีข้อถูก


4. จากการสั่ง Compile และ Run โปรแกรม A และโปรแกรม B จะได้ผลลัพธ์เหมือนกันหรือต่างกัน เพราะเหตุใด

โปรแกรม A
#include
#include
void main ()
{
int a = 1;
clrscr ();
while (a<26)
{
printf (“#”);
a++i;
}
getch();
}
}
โปรแกรม A
#include
#include
void main ()
{
int a = 0, char x;
clrscr ();
x = ‘4’;
while (a<=24)
{
printf(“%s”,x);
a++;
}
getch();


 ต่างกัน เพราะกำหนดค่าตัวแปรต่างกัน
ต่างกัน เพราะคำสั่ง printf() สั่งให้แสดงค่าคงที่กับตัวแปร x
เหมือนกัน เพราะเป็นการสั่งแสดงเครื่องหมาย # จำนวน 24 ครั้ง 
เหมือนกัน เพราะโปรแกรม B สั่งแสดงค่าตัวแปร x ซึ่งมีค่า = “#” เหมือนการสั่งแสดงค่า ‘#’ ใน
โปรแกรม A


5. จากส่วนโปรแกรมต่อไปนี้ หลังจบการทำงานแล้ว count จะมีค่าเป็นเท่าใด

 1. num = 3; count = 0; i = 1
 2. while (i<3) {
 3. if ((i%num)>count) {
 4. count = count + 1;
 5. i = i +1 }
 6. }

20
6
3
2


6. การเขียนคำสั่งหรือการทำงานของโปรแกรมข้างล่างนี้ ข้อใดกล่าวได้ถูกต้อง

#include <stdio.h>
 #include <conio.h>
 void main ()
 {
  int i = 1, sum;
  clrscr ();
  sum = 0;
  while (i<12)
{
  i = i + 2;
  sum = sum + i;
}
  printf (“sum = %d”,sum);
  getch ();
}

 เป็นโปรแกรมหาผลบวกของเลขคี่ 1 ถึง 11
โปรแกรมนี้ทำงานที่คำสั่ง sum = sum + x; จำนวน 6 ครั้ง
คำสั่งในบรรทัด while (i<12) เขียนผิด เพราะไม่มีเครื่องหมาย ; อยู่ท้ายคำสั่ง
ถ้าโปรแกรมถูกต้อง เมื่อสั่ง Run โปรแกรมจะได้ผลลัพธ์คือ sum = 36


7. ผลลัพธ์ที่ได้จากการสั่ง Compile และ Run ของโปรแกรมข้างล่างนี้คือข้อใด

#include <stdio.h>
 #include <conio.h>
 void main ()
{
  int grade = 4;
  clrscr();
  while (grade>3)
printf(“Very good”);
  getch();
 }

เกิด error compile ไม่ผ่าน
แสดงข้อความว่า Very good จำนวน 1 ครั้ง
แสดงข้อความว่า Very good จำนวน 2 ครั้ง อยู่ในบรรทัดเดียวกัน
แสดงข้อความว่า Very good ต่อ ๆ กันไปหลายบรรทัดไม่มีสิ้นสุด


8. การทำงานของคำสั่ง while กล่าวไม่ถูกต้อง
while เป็นคำสั่งการให้ทำงานวนรอบหรือทำซ้ำ
while เป็นคำสั่งที่ต้องการให้ตรวจสอบเงื่อนไขก่อนว่า ถ้าเงื่อนไขเป็นจริง จึงจะเข้าไปทำงานใน loop
คำสั่งที่ต้องการให้ทำงานใน loop จะมีกี่คำสั่งก็ได้ โดยไม่ต้องมีเครื่องหมายปีกกาเปิด { และปิด} ทำเป็นบล็อก
การทำงานวนรอบใน loop จะมีจำนวนกี่รอบก็ได้ ขึ้นอยู่กับเงื่อนไขและการปรับค่าตัวแปรที่เป็นนิพจน์เงื่อนไข


9. จากโปรแกรมข้างล่างนี้ เมื่อส่ง Compile และ Run โปรแกรม และต้องการให้แสดงผลลัพธ์ดังนี้

Your grade is B
 My grade is A
สามารถเขียน (นิพจน์เงื่อนไข) ได้เหมือนกับทุกตัวเลือกยกเว้นตัวเลือกใด
 #include <stdio.h>
 #include <conio.h>
 void main ()
 {
  char grade;
  int score = 75;
  clrscr();
  grade = ‘B’;
  
while(นิพจน์เงื่อนไข)
{
printf (“Your grade is %s”,grade);
score = score+5,;
grade = ‘A’;
                  }
printf(“\n My grade is %s”,grade);
getch();
}

(score = 75)
(score< 80)
(grade == ‘B’)
 ((score <= 75)&&(grade == ‘B’))


10. การเขียนรูปแบบของคำสั่ง while ใด ไม่ถูกต้อง
while(นิพจน์เงื่อนไข)
  คำสั่งที่ต้องการให้ทำงาน 1 คำสั่ง;
while(นิพจน์เงื่อนไข) {
  คำสั่งที่ต้องการให้ทำงานหลายคำสั่ง; }
while(นิพจน์เงื่อนไข) {
  คำสั่งที่ 1;คำสั่งที่ 2 ;
  ...คำสั่งที่ n; }
while(นิพจน์เงื่อนไข) {
  คำสั่งที่ 1; คำสั่งที่ 2;
  ...คำสั่งที่ n; }


 

 



 




 

เว็บไซต์นี้จัดทำขึ้นเพื่อประกอบการจัดการเรียนการสอนบทเรียนบนเครือข่าย
โดย ครูหทัยชนก ถาแหล่ง
โรงเรียนห้วยซ้อวิทยาคม รัชมังคลาภิเษก
สังกัดสำนักงานเขตพื้นที่การศึกษามัธยมศึกษา เขต 36

( เว็บไซด์สามารถแสดงผลได้ดีที่ Mozilla Firefox ที่ความละเอียด 1024 x 768 pixels )


หน้าแรก เกียวกับเรา แหล่งเรียนรู้ ผลงานนักเรียน ข่าวประชาสัมพันธ์ ติดต่อเรา เว็บบอร์ด
หน้าแรก เกียวกับเรา หน่วยงานที่เกี่ยวข้อง แหล่งเรียนรู้ ผลงานนักเรียน ข่าวประชาสัมพันธ์ ติดต่อเรา เว็บบอร์ด