কম্পিউটার

সি ভাষা ব্যবহার করে কাঠামোর উপর একটি উদাহরণ প্রোগ্রাম লিখুন


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

গঠনগুলির ঘোষণা এবং সূচনা

গঠন ঘোষণার সাধারণ ফর্ম নিম্নরূপ -

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

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

ট্যাগনেম - কাঠামোর নাম নির্দিষ্ট করে

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;

প্রবর্তন এবং কাঠামো অ্যাক্সেস করা

  • সদস্য অপারেটর (বা) ডট অপারেটর ব্যবহার করে সদস্য এবং একটি কাঠামো পরিবর্তনশীলের মধ্যে সংযোগ স্থাপন করা হয়।

  • সূচনা নিম্নলিখিত উপায়ে করা যেতে পারে -

পদ্ধতি 1

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

পদ্ধতি 2

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

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

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

পদ্ধতি 4 (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 ( "enter no of pages, author, price of book");
   scanf ("%d%s%f", &b.pages, b.author, &b.price);
   printf("Details of book are");
   printf("pages =%d, author = %s, price = %f", b.pages, b.author, b.price);
   getch();
}

উদাহরণ

নিম্নলিখিত কাঠামোর আরেকটি উদাহরণ -

#include<stdio.h>
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. সেমিকোলন ব্যবহার না করে "টিউটোরিয়াল পয়েন্ট" প্রিন্ট করার জন্য একটি সি প্রোগ্রাম লিখুন

  4. C ব্যবহার করে একটি ফাইলে গঠন পড়ুন/লিখুন