Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรม C จัดการระบบคลังสินค้าด้วย Structure


คำอธิบาย

Structure (โครงสร้าง) คือการรวมตัวแปรชนิดข้อมูลต่างๆ เข้าด้วยกันภายใต้ชื่อเดียว คุณสมบัติสำคัญ:

  • คัดลอกโครงสร้างทั้งตัวได้ด้วย Assignment operator
  • รองรับ Nested Structure (โครงสร้างซ้อนโครงสร้าง)
  • ส่งผ่านฟังก์ชันได้ทั้งตัว แบบสมาชิก และที่อยู่
  • สร้าง Pointer to Structure ได้

โค้ดตัวอย่าง: ระบบคลังสินค้า

#include <stdio.h>

struct date {
    int day, month, year;
};

struct details {
    char name[20];
    int price, code, qty;
    struct date mfg;
};

struct details item[50];

int main() {
    int n, i;
    printf("Enter number of items: ");
    scanf("%d", &n);
    for (i = 0; i < n; i++) {
        printf("Item name: "); scanf("%s", item[i].name);
        printf("Item code: "); scanf("%d", &item[i].code);
        printf("Quantity: "); scanf("%d", &item[i].qty);
        printf("Price: "); scanf("%d", &item[i].price);
        printf("Mfg date (dd-mm-yyyy): ");
        scanf("%d-%d-%d", &item[i].mfg.day, &item[i].mfg.month, &item[i].mfg.year);
    }
    printf("\n***** INVENTORY *****\n");
    printf("S.N.| NAME | CODE | QTY | PRICE | MFG.DATE\n");
    for (i = 0; i < n; i++)
        printf("%d %-15s %-d %-5d %-5d %d/%d/%d\n",
            i+1, item[i].name, item[i].code, item[i].qty, item[i].price,
            item[i].mfg.day, item[i].mfg.month, item[i].mfg.year);
    return 0;
}

ผลลัพธ์ตัวอย่าง

Enter number of items: 5
Item name: pen
Item code: 12
Quantity: 50
Price: 25
Mfg date: 12-02-2020
...
***** INVENTORY *****
1 pen        12 50    25    12/2/2020
2 pencil     15 100   30    11/3/2020
3 book       34 30    60    15/4/2020
4 bag        39 20    70    12/3/2021
5 sharpner   33 20    40    12/4/2021