โปรแกรมในภาษาซีทุกโปรแกรมจะประกอบด้วยฟังก์ชันอย่างน้อย หนึ่งฟังก์ชัน คือ ฟังก์ชัน main โดยโปรแกรมภาษาซีจะเริ่มทำงานที่ฟังก์ชัน main ก่อน ในแต่ละฟังก์ชันจะประกอบด้วย
1.ชื่อฟังก์ชัน และอาจมีรายการของ argument (บางคนเรียก parameter) อยู่ในวงเล็บ
2.ตัวแปร
3.ประโยคคำสั่งต่างๆ
ก่อนที่เราจะเริ่มเขียนโค๊ดภาษาซี เราควรศึกษาว่า ภาษาซีคืออะไร ใช้ทำอะไร และมีข้อดี ข้อเสียอย่างไร สามารถนำไปต่อยอดอะไรได้บ้าง คลิกที่ลิงค์ข้างล่างนี้ได้เลย
ทำความรู้จักกับภาษาซี C/C++
หลังจากที่เราทำความรู้จักกับภาษาซีแล้ว เรามาเริ่มเขียนภาษาซีกันเลย
โจทย์ : รับค่าตัวเลขใดก็ได้ และเมื่อรับค่าเลข 0 ให้จบการทำงานของโปรแกรม และแสดงว่ารับมากี่จำนวน พร้อมทั้งแสดงเลขที่รับมาทั้งหมด โดยไม่รวมเลข 0
โค้ด: เลือกทั้งหมด
#include<stdio.h>
main(){
int i=0,count=0,k,num[100];
while(1){
printf("Enter number :");
scanf("%d",&num[i]);
if(num[i]==0){
break;
}
i++; count++;
}
printf("num of stack = %d\n",count);
printf("number of stack (no 0) :");
for(k=0;k<=count;k++){
if(num[k]>0){
printf(" %d",num[k]);
}
}
printf("\n");
}
บรรทัดที่ 4 ใช้ infinity loop เพื่อวน loop รับค่าไปเรื่อยๆ
บรรทัดที่ 5 แสดงข้อความรับค่าตัวเลข
บรรทัดที่ 6 รับค่าตัวเลขเก็บใน num ตำแหน่งที่ i
บรรทัดที่ 7 ถ้า num ตำแหน่งที่ i มีค่าเท่ากับ 0
บรรทัดที่ 8 สั่งให้หยุดการทำงานของ loop
บรรทัดที่ 10 บวกค่าของตำแหน่งรอบละ 1 , บวกค่าของตัวนับครั้งละ 1
บรรทัดที่ 12 แสดงตัวเลขที่รับมาทั้งหมด ยกเว้น 0 (จริงๆแล้วยังมีค่าเลข 0 อยู่ใน Array แต่เนื่องจากรอบสุดท้าย รับค่าเลข 0 loop ได้หยุดก่อนที่ จะนับจำนวนสุดท้าย โปรแกรมเลยแสดงแค่ค่าก่อนหน้า นั่นคือ 6)
บรรทัดที่ 14 แสดงข้อความลำดับตัวเลขใน Array
บรรทัดที่ 15 ใช้ for loop เพื่อวน loop ตำแหน่งของ Array ทีละตำแหน่ง
บรรทัดที่ 16 ถ้า num ตำแหน่งที่ k มากกว่า 0
บรรทัดที่ 17 แสดงตัวเลขใน Array จากเงื่อนไขด้านบน