โครงสร้างโปรแกรม
1. โครงสร้างโปรแกรมแบบเลือกทำ และตัดสินใจ
2. โครงสร้างโปรแกรมแบบวนรอบ หรือวนซ้ำ
3. โครงสร้างโปรแกรมแบบฟังก์ชั่น
1. โปรแกรมแบบเลือกทำ และตัดสินใจ
โปรแกรมแบบเลือกทำและตัดสินใจ if(1/4)
โปรแกรมเลือกทำ โดยใช้คำสั่ง if(2/4)
โปรแกรมเลือกทำ แบบสองทางเลือก if(3/4)
โปรแกรมเลือกทำแบบสามทางเลือก if(4/4)
2. โปรแกรมแบบวนรอบ หรือวนซ้ำ
คำสั่งในภาษา C ที่ควบคุมให้โปรแกรมทำงานแบบทำซ้ำ หรือวนรอบ มี 3คำสั่ง คือ
1. คำสั่ง while
2. คำสั่ง do - while
3. คำสั่ง for
1. คำสั่ง while
- โปรแกรมทำซ้ำแบบจำกัดจำนวนรอบ ด้วยคำสั่ง while
- โปรแกรมทำซ้ำแบบไม่จำกัดจำนวนรอบ ด้วยคำสั่ง while
โปรแกรมทำซ้ำ โปรแกรมแห่งพลัง และโปรแกรมแห่งความผิดพลาด
ปัญหาที่มักจะพบบ่อย ๆ ในการเขียนโปรแกรมแบบทำซ้ำ
1) การทำซ้ำแบบไม่หยุด
2) The “Off by One” Error
2. คำสั่ง do-while
do-while โปรแกรมทำซ้ำที่มีการตรวจสอบเงื่อนไขในตอนท้ายของ loop
do-while โปรแกรมจะทำงานอย่างน้อยหนึ่งรอบ ไม่ว่าผลการตรวจสอบเงื่อนไขจะเป็นอย่างไร(จริง หรือ เท็จ) ก็ตาม
- โปรแกรมทำซ้ำแบบจำกัดจำนวนรอบ ด้วยคำสั่ง do-while
- โปรแกรมทำซ้ำแบบไม่จำกัดจำนวนรอบ ด้วยคำสั่ง do-while
คำถามที่น่าสนใจ
1) โปรแกรมทำซ้ำแบบใช้คำสั่ง while กับ โปรแกรมทำซ้ำแบบใช้คำสั่ง do-while มีลักษณะสำคัญแตกต่างกันอย่างไร
3. คำสั่ง for
คำสั่ง for จะใช้เมื่อเราสามารถนับจำนวนรอบได้ หรือรู้จำนวนรอบของการทำงาน (ด้วยวิธีการอย่างใดอย่างหนึ่ง)
- โปรแกรมทำซ้ำด้วยคำสั่ง for
- Syntax
- initialization
- loop condition
- update statement
for(initialization, loop condition, update statement)
- initialization และ update statement อาจมีได้หลายตัว แต่ละตัวแยกออกจากกันด้วย comma
- for(int i=0, j=1; i<5; i++, j+=3)
- โปรแกรมทำซ้ำด้วยคำสั่ง for แบบซ้อน
4.ฟังก์ชัน
ฟังก์ชั่น คือ ฟังก์ชั่น คือ โปรแกรมย่อย ซึ่งประกอบด้วยกลุ่มของคำสั่ง ที่ร่วมกันทำงานเพื่อเป้าหมายอย่างใดอย่างหนึ่ง งานที่ทำซ้ำ ๆ อย่างเดิม ทำบ่อย ๆ มักจะแยกมาเขียนเป็นฟังก์ชั่น โปรแกรมภาษา C ทุกโปรแกรมจะต้องมีฟังก์ชันอย่างน้อยหนึ่งฟังก์ชัน เช่น ฟังก์ชั่น main () เป็นต้น นอกจากฟังก์ชั่นเมนแล้ว ผู้เขียนโปรแกรมสามารถกำหนด หรือสร้างฟังก์ชันขึ้นเพื่อใช้งานเพิ่มเติมได้
องค์ประกอบสำคัญในการใช้งานฟังก์ชั่น ประกอบด้วย
- การประกาศฟังก์ชั่น ชื่อฟังก์ชั่น และอธิบายรายละเอียดของฟังก์ชั่น (Definition a Function)
- การเรียกใช้ฟังก์ชั่น (Calling a Function)
- การส่งค่ากลับจากฟังก์ชั่น (Returning Function)
- การกำหนดรูปแบบวิธีการเรียกใช้ฟังก์ชั่น (Parameterized Function)
#include <stdio.h>
#include <stdlib.h>
void myFunction(){
printf("Welcome to my function.\n");
}
int main(int argc, char *argv[]) {
myFunction();
return 0;
}
//file name: x_fn_02.c
#include<stdio.h>
double trapzoid(double w, double l){
double area= w * l;
return area;
}
double circle(double r){
printf("Your radius = %f\n",r);
printf("My Area = %f\n",(3.14159 * r * r));
return 3.14159 * r * r;
//return area;
}
double triangle(double b, double h){
return 0.5 * b * h;
}
double rectangle(double w, double l){
return w*l;
}
void main(){
printf("Please Choose menu for calculation.\n");
printf("1 Circle Area.\n");
printf("2 Triangle Area.\n");
printf("3 Rectangle Area.\n");
printf("4 Trapzoid Area.\n");
printf("0 Exit.\n");
printf(".......................\n");
int c=99;
scanf("%d",&c);
printf("You put %d.\n",c);
double a = 9.9;
// a = c;
printf("a = %f\n",a);
switch(c){
case 1 : printf("Circle Area.\n");
a = circle(2.5);
printf("My Circle Area = %f", a);
break;
case 2 : printf("Triangle Area.\n"); break;
case 3 : printf("Rectangle Area.\n"); break;
default: printf("Default.\n");
}
printf("\nEnd.\n");
}
references:
https://www.tutorialspoint.com/cprogramming/c_functions.htm