কম্পিউটার টিউটোরিয়াল

C ভাষা ব্যবহার করে স্ট্রাকচারের উদাহরণ প্রোগ্রাম


স্ট্রাকচার হল বিভিন্ন ডেটা টাইপের ভেরিয়েবলগুলোর একটি সংকলন, যা একক নামের অধীনে গোষ্ঠীবদ্ধ থাকে।

স্ট্রাকচার ডিক্লেয়ারেশন এবং ইনিশিয়ালাইজেশন

স্ট্রাকচার ডিক্লেয়ারেশনের সাধারণ ফর্ম নিম্নরূপ:

datatype member1; struct tagname{    datatype member2;    datatype member n; };

এখানে, struct - কীওয়ার্ড

         tagname - স্ট্রাকচারের নাম নির্দিষ্ট করে

         member1, member2 - স্ট্রাকচার গঠনকারী ডেটা আইটেম নির্দিষ্ট করে।

উদাহরণ

struct book{    int pages;    char author[30];    float price; };

স্ট্রাকচার ভেরিয়েবল

স্ট্রাকচার ভেরিয়েবল ডিক্লেয়ার করার তিনটি পদ্ধতি রয়েছে:

1) struct book{    int pages;    char author[30];    float price; }b; 2) struct{    int pages;    char author[30];    float price; }b; 3) struct book{    int pages;    char author[30];    float price; }; struct book b;

স্ট্রাকচারের ইনিশিয়ালাইজেশন এবং এক্সেস

  • একটি মেম্বার এবং স্ট্রাকচার ভেরিয়েবলের মধ্যে লিংক স্থাপন করা হয় মেম্বার অপারেটর (.) বা ডট অপারেটর দিয়ে।

  • ইনিশিয়ালাইজেশন নিম্নলিখিত পদ্ধতিতে করা যায়:

পদ্ধতি ১

struct book{    int pages;    char author[30];    float price; } b = {100, "balu", 325.75};

পদ্ধতি ২

struct book{    int pages;    char author[30];    float price; }; struct book b = {100, "balu", 325.75};

পদ্ধতি ৩ (মেম্বার অপারেটর ব্যবহার করে)

struct book{    int pages;    char author[30];    float price; }; struct book b;    b.pages = 100;    strcpy(b.author, "balu");    b.price = 325.75;

পদ্ধতি ৪ (scanf ফাংশন ব্যবহার করে)

struct book{    int pages;    char author[30];    float price; }; struct book b;    scanf("%d", &b.pages);    scanf("%s", b.author);    scanf("%f", &b.price);

উপরের যেকোনো স্ট্রাকচারের কনটেন্ট মেইন মেথডে নিচের মত প্রিন্ট করা যায়:

main(){    struct book b;    clrscr();    printf("বইর পৃষ্ঠা, লেখক, দাম লিখুন");    scanf("%d%s%f", &b.pages, b.author, &b.price);    printf("বইর বিবরণ");    printf("pages = %d, author = %s, price = %f", b.pages, b.author, b.price);    getch(); }

উদাহরণ

স্ট্রাকচার সম্পর্কিত আরেকটি উদাহরণ নিচে দেওয়া হল:

#include  struct aaa{    struct aaa *prev;    int i;    struct aaa *next; }; main(){    struct aaa abc, def, ghi, jkl;    int x = 100;    abc.i = 0;    abc.prev = &jkl;    abc.next = &def;    def.i = 1;    def.prev = &abc;    def.next = &ghi;    ghi.i = 2; ghi.prev = &def;    ghi.next = &jkl;    jkl.i = 3;    jkl.prev = &ghi;    jkl.next = &abc;    x = abc.next->next->prev->next->i;    printf("%d", x); }

আউটপুট

2
  1. স্ট্রাকচার কনসেপ্ট ব্যবহার করে সি ভাষায় বিট ফিল্ড ব্যাখ্যা

  2. লুপ, রিকারশন ও কন্ট্রোল স্ট্রাকচার ছাড়া 'ABCD' বারবার প্রিন্ট করার C প্রোগ্রাম

  3. সি প্রোগ্রাম: সেমিকোলন ব্যবহার না করে "Tutorials Point" প্রিন্ট করুন

  4. সি-তে fwrite() ও fread() ব্যবহার করে স্ট্রাকচার ফাইলে পড়া/লেখা