मान लीजिए आप 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