একটি অ্যারে হল সম্পর্কিত আইটেমের একটি গ্রুপ যা একটি সাধারণ নাম দিয়ে সংরক্ষিত থাকে।
অ্যারে ডিক্লেয়ারেশন
অ্যারে ডিক্লেয়ার করার সিনট্যাক্স নিম্নরূপ:
datatype array_name[size];
ইনিশিয়ালাইজেশন
একটি অ্যারে দুটি পদ্ধতিতে ইনিশিয়ালাইজ করা যায়:
- কম্পাইল টাইম ইনিশিয়ালাইজেশন।
- রানটাইম ইনিশিয়ালাইজেশন।
একটি অ্যারে ডিক্লেয়ারেশনের সময়ও ইনিশিয়ালাইজ করা যায় নিম্নরূপ:
int a[5] = {100, 200, 300, 400, 500};ফাংশন
একটি ফাংশন হল একটি স্বয়ংসম্পূর্ণ ব্লক যা একটি নির্দिष्ट ভালো-ডিফাইনড টাস্ক সম্পাদন করে। অ্যারেকে আর্গুমেন্ট হিসেবে ফাংশনে পাস করার দুটি পদ্ধতি রয়েছে:
পুরো অ্যারে আর্গুমেন্ট হিসেবে ফাংশনে পাঠানো।
পৃথক এলিমেন্টগুলো আর্গুমেন্ট হিসেবে ফাংশনে পাঠানো।
এখন, C ভাষায় পুরো অ্যারে আর্গুমেন্ট হিসেবে ফাংশনে কীভাবে পাঠাতে হয় সেটি বুঝি।
পুরো অ্যারে আর্গুমেন্ট হিসেবে ফাংশনে পাঠানো
পুরো অ্যারে আর্গুমেন্ট হিসেবে পাঠাতে, ফাংশন কল-এ অ্যারে নামটি পাঠানোর চেষ্টা করুন।
পুরো অ্যারে রিসিভ করতে, ফাংশন হেডারে একটি অ্যারে ডিক্লেয়ার করা উচিত।
উদাহরণ ১
নিচের উদাহরণটি রেফার করুন:
#includemain(){ void display(int a[5]); int a[5], i; clrscr(); printf("৫টি এলিমেন্ট লিখুন"); for(i = 0; i < 5; i++) scanf("%d", &a[i]); display(a); // অ্যারে নাম ব্যবহার করে পুরো অ্যারে 'a' পাঠানো হয়েছে getch(); } void display(int a[5]){ // পুরো অ্যারে রিসিভ করা হয়েছে int i; printf("অ্যারের এলিমেন্টগুলো"); for(i = 0; i < 5; i++) printf("%d ", a[i]); }
আউটপুট
উপরের কোড কম্পাইল এবং এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
৫টি এলিমেন্ট লিখুন 10 20 30 40 50 অ্যারের এলিমেন্টগুলো 10 20 30 40 50
উদাহরণ ২
অ্যারে থেকে এলিমেন্টগুলো উল্টো ক্রমে প্রিন্ট করার C প্রোগ্রাম নিচে দেওয়া হল:
#includevoid main(){ // অ্যারে ডিক্লেয়ার করা - রানটাইম // int array[5], i; void rev(int array[5]); // অ্যারেতে এলিমেন্ট পড়া // printf("অ্যারেতে এলিমেন্ট লিখুন: \n"); // For লুপ // for(i = 0; i < 5; i++){ // ইউজার ইনপুট পড়া // printf("array[%d]: ", i); scanf("%d", &array[i]); } // অ্যারেতে এলিমেন্টগুলো উল্টো ক্রমে প্রদর্শন করা // printf("অ্যারেতে এলিমেন্টগুলো উল্টো ক্রমে প্রদর্শিত: \n"); rev(array); // অ্যারে নাম ব্যবহার করে পুরো অ্যারে 'a' পাঠানো হয়েছে getch(); } void rev(int array[5]){ // পুরো অ্যারে রিসিভ করা হয়েছে int i; for(i = 4; i >= 0; i--){ // আউটপুট প্রদর্শন // printf("array[%d]: ", i); printf("%d\n", array[i]); } }
আউটপুট
উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
অ্যারেতে এলিমেন্ট লিখুন: array[0]: 23 array[1]: 34 array[2]: 12 array[3]: 56 array[4]: 12 অ্যারেতে এলিমেন্টগুলো উল্টো ক্রমে প্রদর্শিত: array[4]: 12 array[3]: 56 array[2]: 12 array[1]: 34 array[0]: 23