প্রোগ্রামিং মানে হচ্ছে লজিক। আর আমাদের লজিক গুলো কম্পিউটারকে জানাতে ব্যবহার করা হয় কন্ট্রোল স্টেটমেন্টস (Control Statements)।
এর আগে আমরা যত গুলো প্রোগ্রাম দেখেছি, সব গুলো শুধু মাত্র কিছু ডেটা ইনপুট নিয়েছে বা কিছু ডেটা আউটপুট দিয়েছে। কিন্তু কোন লজিক্যাল তুলনা করি নি। আমাদের যে সব প্রোগ্রাম লিখতে হবে, সে গুলোতে অনেক লজিক্যাল তুলনা করতে হবে। যেমন আমরা ৩টি সংখ্যার মধ্যে সবচেয়ে ছোট বা সবচেয়ে বড় সংখ্যা নির্ণয়ের ফ্লো চার্ট যদি দেখি, তাহলে দেখতে পাবো ঐখানে কিছু জায়গায় হ্যা অথবা না স্টেপ রয়েছে। আর ঐ ধরনের স্টেপ গুলোকে বলে লজিক্যাল স্টেপ। লজিক্যাল স্টেপ গুলোকে প্রোগ্রামে প্রকাশ করা হয় এই কন্ট্রোল স্টেটমেন্ট দিয়ে।
সি তে মূলত চার ধরনের কন্ট্রোল স্টেটমেন্ট রয়েছে। এগুলো হল 1. ডিসিশন মেকিং স্টেটমেন্ট 2. সিলেকশন স্টেটমেন্ট 3. ইটারেশন স্টেটমেন্ট 4. জাম্প স্টেটমেন্ট
সিনট্যাক্স হিসেবে কন্ট্রোল স্টেটমেন্ট গুলোর মধ্যে রয়েছেঃ
if-else Statement
while Statement
do-while statement
for statement ইত্যাদি।
সামনের অংশগুলোতে আমরা এসব কন্ট্রোল স্টেটমেন্ট নিয়ে আলোচনা করব। এগুলো জেনে আমরা সত্যিকারের প্রোগ্রামিং জগতে প্রবেশ করতে যাচ্ছি। যে যত সহজে কন্ট্রোল স্টেটমেন্ট গুলো দিয়ে নিজের লজিক গুলো কোডে পরিনত করতে পারবে, সে দ্রুত প্রোগ্রামিং এ ভালো করতে পারবে।
কন্ট্রোল স্টেটমেন্ট নিয়ে আগানোর আগে আমরা একটু ব্লক আর স্টেটমেন্ট এর ধারণাটা পরিষ্কার করে নেব। সাধারণত যে কোন এক্সপ্রেশনের শেষে সেমিকোলন ; দিলে সেটি একটি স্টেটেন্ট হয়ে যায়। যেমন
x = 5;i++;printf("The result is ...");
উপরের তিনটি এক্সপ্রেশনই আলাদা আলাদা স্টেটমেন্ট।
একাধিক স্টেটমেন্টকে একসাথে {
এবং }
দিয়ে কম্পাউন্ড স্টেটমেন্ট বা ব্লক তৈরি করা হয়। ব্লকের বৈশিস্ট্য হল ব্লকের সিনট্যাক্স গুলো একসাথে এক্সিকিউট হয়। কন্ট্রোল স্টেটমেন্ট নিয়ে কাজ করতে হলে বিভিন্ন যায়গায় বিভিন্ন লজিকের উপর ভিত্তি করে আমাদেরকে বিভিন্ন ব্লক এক্সিকিউট করা লাগতে পারে।