ধরুন আপনি C ব্যবহার করে একটি অক্ষর, তারপর একটি স্ট্রিং এবং একটি বাক্য (স্পেস সহ স্ট্রিং) নিতে চান। তাই আমরা তিনটি ইনপুট প্রদান করব এবং আউটপুট হিসাবে একই প্রিন্ট করব। এখানে স্ট্রিংয়ের সর্বোচ্চ আকার 500।
সুতরাং, যদি ইনপুট মত হয়
character = 'T' string = "ProgrammingLanguage" sentence = "I love programming through C",
তাহলে আউটপুট হবে
Your character: T Your string: ProgrammingLanguage Your sentence: I love programming through C
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
চরিত্রের জন্য আমাদের scanf("%c", &character);
ব্যবহার করতে হবে -
স্ট্রিং এর জন্য আমাদের scanf("%s", string);
ব্যবহার করতে হবে -
এই ধাপটি ঐচ্ছিক, কিন্তু কিছু ক্ষেত্রে প্রয়োজনীয়। কখনও কখনও আপনি একটি সমস্যা সম্মুখীন হতে পারে. আপনার প্রোগ্রাম কখনও কখনও পরবর্তী ইনপুটের জন্য অপেক্ষা করে না, তাই আমাদের fflush(stdin) ব্যবহার করে বাফার পরিষ্কার করতে হবে
-
এবং স্পেস সহ স্ট্রিংয়ের জন্য আমাদের fgets() ফাংশন ব্যবহার করতে হবে। এখানে প্রথম প্যারামিটারটি স্ট্রিং, দ্বিতীয়টি আকার এবং শেষটি হল stdin কনসোল থেকে ইনপুট নিতে।
-
শেষটি নির্দেশ করে যে স্ট্রিংয়ের শেষ বোঝাতে আমাদের একটি নতুন লাইন অক্ষর প্রয়োজন। অন্যথায় এটি স্পেসও নেবে৷
৷
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <stdio.h> int main(){ char character; char string[500]; char sentence[500]; scanf("%c", &character); scanf("%s", string); fflush(stdin); fgets(sentence, 500, stdin); printf("Your character: %c\n", character); printf("Your string: %s\n", string); printf("Your sentence: %s\n", sentence); }
ইনপুট
T ProgrammingLanguage I love programming through C
আউটপুট
Your character: T Your string: ProgrammingLanguage Your sentence: I love programming through C