ตัวอย่างการเขียนโปรแกรม C บน Linux สำหรับผู้เริ่มต้น

C Programming Examples Linux



ภาษาซีเป็นหนึ่งในตัวเลือกที่ดีสำหรับการเรียนรู้การเขียนโปรแกรมคอมพิวเตอร์สำหรับผู้เริ่มต้น ตรรกะการเขียนโปรแกรมพื้นฐานสามารถเรียนรู้ได้ง่ายโดยใช้ภาษา C เป็นภาษาแรก บางคนมองว่า Java เป็นภาษาการเขียนโปรแกรมแรก แต่ฉันคิดว่าควรเรียนรู้การเขียนโปรแกรมแบบมีโครงสร้างหรือตามขั้นตอนโดยใช้ภาษา C ก่อนที่จะเรียนรู้การเขียนโปรแกรมเชิงวัตถุใดๆ บทความนี้แสดงการเขียนโปรแกรม C พื้นฐานบน Linux โดยใช้ตัวอย่างต่างๆ สำหรับผู้เริ่มต้น

ข้อกำหนดเบื้องต้น

คุณจะต้องใช้โปรแกรมแก้ไขโค้ดและแพ็คเกจที่จำเป็นเพื่อรันโปรแกรม C แพ็คเกจที่จำเป็นจะถูกติดตั้งตามค่าเริ่มต้นในการกระจาย Linux ส่วนใหญ่ คุณสามารถเรียกใช้คำสั่งต่อไปนี้เพื่อตรวจสอบว่ามีการติดตั้งแพ็คเกจที่จำเป็นหรือไม่ คำสั่งจะแสดง gcc เวอร์ชันที่ติดตั้ง







$gcc --รุ่น

ตัวอย่างที่ 1: เขียนและรันโปรแกรม C แรกของคุณ

เขียนโค้ดต่อไปนี้โดยใช้โปรแกรมแก้ไขข้อความและบันทึกไฟล์ที่มีนามสกุล '.c' ไฟล์ส่วนหัว, stdio.h มีฟังก์ชันที่จำเป็นทั้งหมดสำหรับอินพุตและเอาต์พุตมาตรฐาน ซอร์สโค้ดของโปรแกรม C เริ่มรวบรวมจาก หลัก() กระบวนการ. พิมพ์f() ฟังก์ชันนี้ใช้ที่นี่เพื่อพิมพ์เอาต์พุตในเทอร์มินัล



#รวม
intหลัก()
{
printf ('การเรียนรู้ C');
}

รันคำสั่งต่อไปนี้เพื่อคอมไพล์และรันโค้ด ชื่อไฟล์ต้นฉบับคือ first.c และชื่อไฟล์ปฏิบัติการคือ first_program ที่นี่.



$ gcc ก่อน -o first_prpgram
$./first_program

ตัวอย่าง-2: อ่านอินพุตของผู้ใช้

scanf() ฟังก์ชั่นใช้ใน C เพื่ออ่านอินพุตจากผู้ใช้ที่อยู่ภายใต้ stdio.h. ภาษา C เป็นภาษาที่มีการพิมพ์อย่างชัดเจนและรองรับประเภทข้อมูลที่แตกต่างกัน ในตัวอย่างนี้ใช้ชนิดข้อมูลจำนวนเต็มและถ่าน อาร์เรย์อักขระ 100 อักขระถูกประกาศโดย ชื่อ ตัวแปรและจำนวนเต็มถูกประกาศโดย อายุ ตัวแปร. หลังจากรับอินพุต 2 รายการจากผู้ใช้แล้ว ค่าที่จัดรูปแบบจะถูกพิมพ์โดย พิมพ์ () การทำงาน.





#รวม
intหลัก()
{
charชื่อ[100];
intอายุ;
printf ('ใส่ชื่อของคุณ: ');
scanf ('%NS',ชื่อ);
printf ('ป้อนอายุของคุณ: ');
scanf ('%NS', &อายุ);
printf ('สวัสดี %s คุณอายุ %d ปี',ชื่อ,อายุ);
}

ตัวอย่างที่ 3: อ่านอาร์กิวเมนต์บรรทัดคำสั่ง

argc และ argv ตัวแปรถูกใช้เป็นพารามิเตอร์ในวิธี main() เพื่ออ่านค่าอาร์กิวเมนต์บรรทัดคำสั่ง argc ใช้สำหรับอ่านจำนวนอาร์กิวเมนต์ทั้งหมดและ argv ใช้ในการอ่านค่าอาร์กิวเมนต์เป็นอาร์เรย์ วิธีพิมพ์จำนวนอาร์กิวเมนต์บรรทัดคำสั่งทั้งหมดและค่าอาร์กิวเมนต์สามตัวแรกจะแสดงในตัวอย่างนี้

#รวม
intหลัก(intargc,char*argv[]){
printf ('จำนวนอาร์กิวเมนต์ทั้งหมด = %dNS',argc);
printf ('อาร์กิวเมนต์ที่ 1 = %sNS',argv[0]);
printf ('อาร์กิวเมนต์ที่ 2 = %sNS',argv[1]);
printf ('อาร์กิวเมนต์ที่ 3 = %sNS',argv[2]);
}

ตัวอย่างที่ 4: เปรียบเทียบสตริงโดยใช้คำสั่งแบบมีเงื่อนไข

strcmp() ฟังก์ชั่นใช้ในภาษา C เพื่อเปรียบเทียบสองสตริง หากสองสตริงเท่ากันก็จะส่งคืน 0 . หากสตริงแรกใหญ่กว่าสตริงที่สอง สตริงนั้นจะส่งกลับ 1 . หากสตริงแรกน้อยกว่าสตริงที่สอง สตริงนั้นจะส่งกลับ -1 . ในตัวอย่างนี้ ค่าตัวเลขสองค่าและค่าสตริงจะเป็นอินพุตจากผู้ใช้ หากค่าสตริงคือ เพิ่ม จากนั้นจะพิมพ์ผลรวมของตัวเลขสองตัว หากค่าสตริงคือ ย่อย จากนั้นมันจะพิมพ์การลบของตัวเลขสองตัว ถ้าทั้งคู่ถ้าเงื่อนไขกลับเป็นเท็จก็จะพิมพ์ 0 .



#รวม
#รวม
intหลัก(){
intn1,n2,ผลลัพธ์;
charโอเปอเรเตอร์[10];
printf ('ป้อนหมายเลขแรก :');
scanf ('%NS', &n1);
printf ('ป้อนหมายเลขที่สอง:');
scanf ('%NS', &n2);
printf ('ป้อนชื่อการดำเนินการ:');
scanf ('%NS',โอเปอเรเตอร์);
ถ้า( strcmp (โอเปอเรเตอร์,'เพิ่ม') == 0)
ผลลัพธ์=n1+n2;
อื่น ถ้า( strcmp (โอเปอเรเตอร์,'ย่อย') == 0)
ผลลัพธ์=n1-n2;
อื่น
ผลลัพธ์=0;
printf ('ผลลัพธ์คือ : %dNS',ผลลัพธ์);
}

ตัวอย่างที่ 5: วนซ้ำรายการสตริงโดยใช้ for loop

ตัวแปรอาร์เรย์ถูกประกาศโดยใช้ [] ในโปรแกรม C รายการของอาร์เรย์อักขระสองมิติถูกประกาศในตัวอย่างนี้ซึ่งมีค่าสตริง 5 ค่า ขนาดของ() ฟังก์ชั่นใช้เพื่อนับจำนวนองค์ประกอบทั้งหมดของอาร์เรย์ใน C สำหรับ ลูปถูกใช้ในตัวอย่างนี้เพื่อวนซ้ำ ดอกไม้ อาร์เรย์และพิมพ์ค่าแต่ละองค์ประกอบของอาร์เรย์ดอกไม้

#รวม
intหลัก()
{
charดอกไม้[10][ยี่สิบ] = {'ดอกกุหลาบ', 'ป๊อปปี้', 'ลิลลี่', 'ทิวลิป', 'ดาวเรือง'};
intทั้งหมด=ขนาดของ(ดอกไม้)/ขนาดของ(ดอกไม้[0]);
สำหรับ (intNS= 0;NS<ทั้งหมด;NS++)
{
printf ('%NSNS',ดอกไม้[NS]);
}
}

ตัวอย่างที่ 6: ค้นหาเลขคู่จากรายการโดยใช้ while loop

ตัวอย่างนี้มีการประกาศอาร์เรย์หนึ่งมิติของตัวเลขจำนวนเต็ม 10 ตัว the of while loop ในภาษา C แสดงไว้ที่นี่ รหัสต่อไปนี้จะค้นหาตัวเลขคู่ทั้งหมดจากอาร์เรย์ตัวเลข ถ้าจำนวนที่หารด้วย 2 ลงตัวเป็นจำนวนคู่ ในขณะที่ ลูปใช้ที่นี่เพื่ออ่านแต่ละองค์ประกอบของอาร์เรย์และตรวจสอบค่าที่เหลือหลังจากหารองค์ประกอบด้วย 2 เมื่อค่าที่เหลือส่งคืน 0 สำหรับองค์ประกอบใด ๆ จะถูกพิมพ์

#รวม
intหลัก(){
intตัวเลข[10] = { ยี่สิบเอ็ด, 78, 62, 90, 55, 10, 85, สี่ห้า };
intผม= 0;
printf ('เลขคู่จากรายการคือ:NS');
ในขณะที่(ผม< 10) {
ถ้า((ตัวเลข[ผม] % 2) == 0)
printf ('%NSNS',ตัวเลข[ผม]);
ผม++;
}
}

ตัวอย่างที่ 7: หาพื้นที่ของสี่เหลี่ยมผืนผ้าโดยใช้ฟังก์ชัน

แต่ละฟังก์ชันใน C ประกอบด้วยประเภทการส่งคืน ชื่อฟังก์ชัน และพารามิเตอร์ ฟังก์ชันที่ไม่มีพารามิเตอร์สามารถประกาศได้ด้วยภาษาซี หากฟังก์ชันใดๆ ที่ไม่มีฟังก์ชัน main() ถูกประกาศในซอร์สโค้ด จะต้องประกาศต้นแบบของฟังก์ชันนั้นก่อนการประกาศฟังก์ชัน ในตัวอย่างนี้ พื้นที่() ฟังก์ชันถูกประกาศให้คำนวณพื้นที่ของสี่เหลี่ยมใดๆ ที่มีพารามิเตอร์สองตัวเพื่อรับค่าความสูงและความกว้างของสี่เหลี่ยม หลัก() ฟังก์ชั่นจะอ่านค่าความสูงและความกว้างจากผู้ใช้และการโทร พื้นที่() ฟังก์ชันคำนวณและพิมพ์พื้นที่ ต้นแบบของฟังก์ชัน area() ถูกประกาศไว้ที่จุดเริ่มต้นของโค้ด

#รวม
intพื้นที่(intชม, intใน);
intพื้นที่(intชม, intใน)
{
intพื้นที่=ชม*ใน;
กลับพื้นที่;
}

intหลัก()
{
intความสูง,ความกว้าง;
printf ('ป้อนความสูงของสี่เหลี่ยมผืนผ้า:');
scanf ('%NS', &ความสูง);
printf ('ป้อนความกว้างของสี่เหลี่ยมผืนผ้า:');
scanf ('%NS', &ความกว้าง);

printf ('พื้นที่ของสี่เหลี่ยม = %dNS',พื้นที่(ความสูง,ความกว้าง));
}

ลองตัวเอง:

  • เขียนโปรแกรม C เพื่อนำตัวเลขเป็นค่าอายุของบุคคลและพิมพ์ว่าบุคคลนั้นเป็นวัยรุ่นหรือเด็กหรือผู้ใหญ่
  • เขียนโปรแกรม C เพื่อค้นหาสตริงเฉพาะในรายการ
  • เขียนโปรแกรม C โดยใช้ฟังก์ชันคำนวณพื้นที่สี่เหลี่ยมคางหมู

บทสรุป:

มีการอธิบายส่วนพื้นฐานที่สุดของการเขียนโปรแกรมไว้ที่นี่โดยใช้ตัวอย่างง่ายๆ เพื่อเริ่มเขียนโปรแกรมด้วยภาษา C การประกาศตัวแปรต่างๆ คำสั่งแบบมีเงื่อนไข ลูปและฟังก์ชันในภาษา C จะแสดงอยู่ในบทความนี้