RBSE Solutions for Class 11 Computer Science Chapter 1 ‘सी’ भाषा का परिचय

Rajasthan Board RBSE Class 11 Computer Science Chapter 1 ‘सी’ भाषा का परिचय

RBSE Class 11 Computer Science Chapter 1 पाठ्यपुस्तक के प्रश्न

RBSE Class 11 Computer Science Chapter 1 बहचयनात्मक

प्रश्न 1.
if (1)
printf(“True”);
else printf(“false”);
उपर्युवत कथन प्रिन्ट करेगा
(अ) true
(ब) false
(स) कथन गलत है
(द) इनमें से कोई नहीं
उत्तर:
(अ) true

प्रश्न 2.
‘C’ भाषा की खोज किसने की?
(अ) केन थॉम्पसन
(ब) डेनिस रिची
(स) मार्टिन रिचर्डस
(द) डॉनोवन
उत्तर:
(ब) डेनिस रिची

प्रश्न 3.
‘C’ भाषा में प्रत्येक कथन को पृथक करने के काम में आता है?
(अ) &
(ब) !
(स) ;
(द) ”
उत्तर:
(स) ;

प्रश्न 4.
‘C’ भाषा के सभी प्रोग्राम में किसका लिखना अति आवश्यक है
(अ) ग्लोबल चर
(ब) main() फलन
(स) पॉइन्टर
(द) फलन
उत्तर:
(ब) main() फलन

प्रश्न 5.
ऐसे शब्द जिनका उपयोग व अर्थ पहले से ही निश्चित होता है
(अ) चर
(ब) अचर
(स) अभिज्ञानक
(द) आरक्षित शब्द
उत्तर:
(द) आरक्षित शब्द

RBSE Solutions

प्रश्न 6.
निम्नलिखित में से कौन-सा आरक्षित शब्द नहीं है
(अ) auto
(ब) while
(स) switch
(द) total
उत्तर:
(द) total

प्रश्न 7.
निम्न में से वैध अचर है
(अ) 4, 78
(ब) 0X23A
(स) 177A
(द) 5.7,632
उत्तर:
(ब) 0X23A

प्रश्न 8.
इसमें से कौन-सा अभिज्ञानक वैध नहीं है
(अ) 5XYZ
(ब) total_subject
(स) Stud_mark
(द) XSXY
उत्तर:
(अ) 5XYZ

प्रश्न 9.
long double डाटा प्रकार के लिए printf में कन्ट्रोल स्ट्रिग होगी
(अ) %d
(ब) %if
(स) % ld.
(द) %Lf
उत्तर:
(द) %Lf

प्रश्न 10.
% (प्रतिशत) संकारक का उद्देश्य है
(अ) जोड़ना
(ब) भाग देना
(स) शेषफल निकालना
(द) गुणा करना
उत्तर:
(स) शेषफल निकालना

प्रश्न 11.
यदि i=8 तथा b = –i+3 तो b का मान होगा
(अ) 11
(ब) 10
(स) 9
(द) 12
उत्तर:
(ब) 10

प्रश्न 12.
लूप का निष्पादन रोकने के लिए कौन-सा कथन उपयोग में लाया जाता है
(अ) break
(ब) stop
(स) end
(द) इनमें से कोई नहीं
उत्तर:
(अ) break

प्रश्न 13.
for (i = 0; i < = 5; i ++).
for (j = i; j < = 5; j ++);
Print f (“India”);
उपर्युक्त प्रोग्राम में India कितनी बार प्रिन्ट होगा
(अ) 6
(ब) 21
(स) 36
(द) 30
उत्तर:
(ब) 21

RBSE Solutions

प्रश्न 14.
case की-वर्ड किस कथन में उपयोग होता है?
(अ) switch
(ब) for
(स) do while
(द) while
उत्तर:
(अ) switch

प्रश्न 15.
नीड़ित लूप संरचना में सबसे पहले समाप्त होने वाला लूप होगा
(अ) बाहर वाला लूप
(ब) अन्दर वाला लूप
(स) दोनों एक साथ
(द) इनमें से कोई नहीं
उत्तर:
(ब) अन्दर वाला लूप

RBSE Class 11 Computer Science Chapter 1 अतिलघु उत्तरीय प्रश्न

प्रश्न 1.
आरक्षित शब्द क्या होते हैं?
उत्तर-
ऐसे शब्द जिनका अर्थ तथा उपयोग ‘सी’ भाषा के लिए पहले से ही निश्चित किया गया हो, आरक्षित शब्द कहलाते हैं।

प्रश्न 2.
प्राचल कितने प्रकार के होते हैं?
उत्तर-
प्राचल दो प्रकार के होते हैं।

प्रश्न 3.
‘C’ भाषा में main( ) फलन का उपयोग कितनी बार किया जाता है?
उत्तर-
‘C’ भाषा में main() फलन का उपयोग एक ही बार किया जाता है।

प्रश्न 4.
++ संकारक का क्या उपयोग है?
उत्तर-
वृद्धि संकारक (++) का उपयोग चर के मान को 1 बढ़ा देने के लिए होता है।

प्रश्न 5.
getchar() प्रश्न के द्वारा क्या करते हैं?
उत्तर-
getchar() इनपुट युक्ति से एक करेक्टर लेता है और कम्प्यूटर को देता है।

प्रश्न 6.
आउटपुट किस फलन के द्वारा दिया जा सकता है?
उत्तर-
आउटपुट printf() फलन के द्वारा दिया जा सकता है।

प्रश्न 7.
default कथन किस संरचना में उपयोग किया जाता है?
उत्तर-
default कथन switch कथन में उपयोग किया जाता है।

प्रश्न 8.
नीड़ित if else कथन कैसे लिखते हैं?
उत्तर-
नीड़ित if else कथन में एक if else कथन में दूसरा if else कथन लिखा जाता है।

प्रश्न 9.
continue कथन का उपयोग कहाँ किया जाता है?
उत्तर-
continue कथन का उपयोग लूप के निष्पादन को बीच में रोकने के लिए किया जाता है।

RBSE Solutions

प्रश्न 10.
‘C’ भाषा में कितनी लूप संरचनाएँ हैं?
उत्तर-
‘C’ भाषा में तीन लूप संरचनाएँ होती हैं-

  • For लूप
  • while लूप
  • do-while लूप

प्रश्न 11.
do while संरचना को उदाहरण सहित समझाइये।
उत्तर-
do while लूप में पहले लूप काया को निष्पादित किया जाता है, इसके बाद कन्डीशन को जाँचा जाता है। अत: do while लूप कम से कम एक बार तो निष्पादित होती ही है।

उदाहरण:
do
{
printf(“%d”, i);
i++;
}
while (i < 10);

RBSE Class 11 Computer Science Chapter 1 लघु उत्तरीय प्रश्न

प्रश्न 1.
एल्गोरिथम से क्या तात्पर्य है?
उत्तर-
किसी भी संख्या का एक निश्चित व उचित समाधान प्राप्त करने के लिए हमें उस समस्या को विभिन्न steps के एक समूह के रूप में Define करना होता है, जो कि एक निश्चित क्रम में होते हैं। Follow किए जाने वाले steps के समूह व उसके सुव्यवस्थित क्रम को यदि सरल भाषा में लिखा जाए, तो हमें जो लिखित Description प्राप्त होता है, उसे ही
Algorithm कहा जाता है।

दूसरे शब्दों में, “किसी भी समस्या के एक निश्चित समाधान को प्राप्त करने के लिए अनुक्रमिक व चरणबद्ध रूप में अपनाई जाने वाली लिखित प्रक्रिया को ही Algorithm कहा जाता है।”

प्रश्न 2.
अचर किसे कहते हैं?
उत्तर-
ऐसे अभिज्ञानक जिनका मान पूरे प्रोग्राम में स्थिर होता है, अचर कहलाते हैं। अचर तीन प्रकार के होते हैं।
RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 1

प्रश्न 3.
चर की घोषणा किस प्रकार होती है?
उत्तर-
चर वे अभिज्ञानक हैं जिनमें मानों (Values) का संचय होता है तथा प्रोग्राम निष्पादन में इनका मान परिवर्तित हो सकता है। सभी चरों का निष्पादन होने से पहले उन्हें प्रोग्राम में घोषित करना आवश्यक होता है।
इसका रूप निम्नलिखित प्रकार है

उदाहरण
int a, b, c;
char c;
float num ;

प्रश्न 4.
स्टिंग चर और करैक्टर चर में अन्तर बताइये।
उत्तर-
करैक्टर चर से तात्पर्य सिर्फ एक करैक्टर से होता है और इसे निम्नलिखित प्रकार से दर्शाया जाता है_a’, ‘2’, ‘d’, ‘=’ आदि
स्ट्रिग चर में कई करैक्टर के समूह को double quotes में निम्नलिखित प्रकार से दर्शाया जाता है
“hello”, “computer”, “book” आदि।

RBSE Solutions

प्रश्न 5.
अभिज्ञानक किसे कहते हैं?
उत्तर-
प्रोग्राम के विभिन्न तत्त्वों जैसे चर का नाम (variable name), फलन का नाम (Function name) तथा सिम्बोलिक अचर का नाम (Symbolic constant name) इत्यादि को यूजर द्वारा दिये गए नाम को अभिज्ञानक (Identifier) कहा जाता है। अभिज्ञानक का प्रथम अक्षर अंग्रेजी वर्णमाला का अक्षर होना चाहिए। अभिज्ञानक में अधिकतम 31 अक्षर हो सकते हैं।

प्रश्न 6.
त्रिआधारी ऑपरेटर समझाइये।
उत्तर-
त्रिआधारी संकारक (Ternary operator) में तीन ऑपरेंड होते हैं। इसको निम्नलिखित प्रकार से लिखो जाता हैं-
variable = exp1 ? exp2 : exp3;
exp1 एक तार्किक व्यंजक (Logical Expression) होता है। सबसे पहले व्यंजक exp1 के मान की गणना होती है यदि यह मान True होता है तो exp2 व्यंजक का मान variable में स्टोर होता है अन्यथा इसमें exp3 व्यंजक का मान स्टोर होगा।

उदाहरण
यदि
a = 5, b = 9
c = a> b ? a : b;
इसमें c का मान 9 होगा। क्योंकि a>b False होने के कारण व्यंजक exp3 का मान c में स्टोर करेगा जो कि b है अत: b का मान 9, c में स्टोर होगा।

प्रश्न 7.
संकारकों की प्राथमिकता/पूर्ववर्तिता (Precedence) क्या होती है? समझाइये।
उत्तर-
यदि किसी व्यंजक में एक से अधिक संकारक होते हैं तो यह जानना आवश्यक हो जाता है कि उनको किस क्रम में निष्पादित करना है। यह क्रम निश्चित होता है कि कौन सा संकारक पहले हल किया जाएगा। इसके लिए इन संकारकों की प्राथमिकता निश्चित कर दी गई है। किसी व्यंजक में दो संकारक की पूर्ववर्तिता समान (equal) होने पर उनका साहचर्य नियम के अनुसार सरलीकरण किया जाता है
RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 2

प्रश्न 8.
संकारकों के लिए साहचर्य नियमों की आवश्यकता कब होती है?
उत्तर-
यदि किसी व्यंजक में एक से अधिक संकारक होते हैं तो यह जानना आवश्यक हो जाता है कि उनको किस क्रम में निष्पादित करना है। यह क्रम निश्चित होता है कि कौन सा संकारक पहले हल किया जाएगा। इसके लिए इन संकारकों की प्राथमिकता निश्चित कर दी गई है। किसी व्यंजक में दो संकारक की प्राथमिकता समान (equal) होने पर उनका साहचर्य नियम के अनुसार सरलीकरण किया जाता है। अत: किसी व्यंजक में एक से अधिक संकारक होने पर हमें उनके सरलीकरण हेतु साहचर्य नियम की आवश्यकता होती है।

प्रश्न 9.
‘C’ भाषा को मिडिल लेवल भाषा क्यों कहा जाता है?
उत्तर-
‘C’ एक बहुत ही popular programming language है। इसे मिडिल लेवल लैंग्वेज कहा जाता है क्योंकि C के बाद जितनी भी programming languages आईं उन्होंने किसी न किसी तरह C के features को ही adopt किया है। इस प्रोग्रामिंग भाषा की सबसे महत्त्वपूर्ण विशेषता यह है कि इसमें उच्च स्तरीय प्रोग्रामिंग भाषा के समस्त गुण तो हैं ही, साथ ही इसमें निम्न स्तरीय भाषा के भी समस्त गुण पाए जाते हैं। आज भी सभी software व programming languages कहीं न कहीं ‘C’ language पर ही आधारित हैं।

प्रश्न 10.
नीड़ित लूप किसे कहते हैं?
उत्तर-
नीड़ित लूप (Nested Loop)
जब एक लूप के अन्दर दूसरा लूप चले (loop inside loop) तो इसे नीड़ित लूप कहते हैं। जैसे एक for लूप के अन्दर दूसरा for लूप होना। इसमें ध्यान रखने योग्य बात यह है कि बाहर के लूप का समापन बाद में, अन्दर के लूप का समापन पहले होता है जैसा चित्र में दिखाया गया है
for (condition)
{
for (condition)
{
}

उदाहरण
(a) for (i = 0 ; i < 10 ; i ++)
for (j = i; j < 10 ; j++)
printf(“%d”, i);
printf कथन 55 पूर्णांक नम्बरों को प्रिन्ट करेगा।

प्रश्न 11.
do-while कथन को समझाइये।
उत्तर-
do-while लूप में पहले लूप काया को निष्पादित किया जाता है, उसके बाद कन्डीशन को जाँचा जाता है। अतः do-while लूप कम से कम एक बार तो निष्पादित होता ही है। do-while लूप भी while लूप की तरह ही True condition पर निष्पादित होता है। इसका सामान्य रूप निम्नांकित प्रकार होता है
do.
{ लूप काया
}
while (कन्डीशन);

उदाहरण-
do
{
printf(“%d”, i);
i++;
} while (i < 10) ;

प्रश्न 12.
if कथन के सभी प्रकारों को लिखिये।
उत्तर-
if कथन एक शक्तिशाली कन्ट्रोल कथन है जिसमें पहले कन्डीशन को जाँचा जाता है। if कथन निम्नलिखित चार प्रकार के हैं

  • साधारण if कथन (Simple if statement) – इस कथन में सबसे पहले कन्डीशन को जाँचा जाता है। यदि वह True होती है तो यह कथन समूह को निष्पादित करेगा अन्यथा नहीं करेगा।
  • if-else कथन (if-else statement) – इस कथन का नियन्त्रण प्रवाह दो दिशाओं में नियंत्रण करता है। सबसे पहले कन्डीशन को जाँचा जाता है। यदि कन्डीशन True है तो प्रथम कथन समूह निष्पादित होता है। False होने पर दूसरा कथन-समूह निष्पादित होता है।
  • नीड़ित if-else कथन (Nested if-else statement) – जब if-else कथन में दूसरा if-else कथन लिखा जाता है तो उसे नीड़ित if-else कहते हैं।
  • else if सोपान (else if stairs) – इस प्रकार के if कथन बहुमार्गी कथनों के निष्कर्ष के काम आते हैं। इस कथन का प्रयोग तब किया जाता है जब एक-एक करके कण्डीशन लगानी होती है।

प्रश्न 13.
switch कथन को किस प्रकार लिखते हैं? फारमेट लिखिये।
उत्तर-
Switch कथन एक बहुमार्गी कण्डीशनल नियन्त्रण कथन है। इसमें भी if-else की भाँति एक कण्डीशन होती है। switch कधन में व्यंजक या चर के मानों के अनुसार विभिन्न कथन समूह निष्पादित किये जाते हैं। लेकिन व्यंजक या चर का मान पूर्णांक या करैक्टर ही होना चाहिए। इसका स्वरूप निम्नलिखित प्रकार होता है
Switch (व्यंजक या चर)
{
case मान 1 : कथन समूह 1
break;
case मान 2 : कथन समूह 2
break;
case मान n : कथन समूह n
break;
default : कथन समूह
}

प्रश्न 14.
Continue तथा break में अन्तर स्पष्ट कीजिए।
उत्तर-
‘C’ भाषा में break तथा continue, दोनों कथन लूप के निष्पादन को बीच में रोकने के लिए उपयोग किये जाते हैं, परन्तु break कथन से लूप का निष्पादन रुक जाता है,तथा नियन्त्रण प्रवाह लूप के बाहर वाले कथन को निष्पादित करना आरम्भ कर देता है। जबकि continue कथन का निष्पादन होने पर लूप के मात्र उसी पुनरावर्तन (iteration) के निष्पादन को छोड़कर अगले पुनरावर्तन (iteration) का निष्पादन शुरू कर देता है।

RBSE Solutions

प्रश्न 15.
नीचे लिखे प्रोग्राम का आउटपुट बताइये
उत्तर-
(a)

#include
main ()
{
int i = 1, x = 1 ;
for (i = 1 ; i < 10, i++)
{
printf("%d\n", x + 1);
x = x + 1;
}
}
आउटपुट =
2
4
6
8
10
12
14
16
18

(b)

 #include
# define p 10
{
int k = | , w = p;
while (k < = w)
{
printf("%d\n",k);
}
}
आउटपुट =
|
|
| Indefinite loop
:
:

RBSE Class 11 Computer Science Chapter 1 निबंधात्मक प्रश्न

प्रश्न 1.
‘C’ भाषा के प्रोग्राम की संरचना बताइये।
उत्तर-
‘C’ भाषा का प्रोग्राम विभिन्न फलनों का समूह है। प्रत्येक फलन वाक्यों का समूह है जो कोई एक विशेष कार्य करता है। कम्पाइलर (compiler) main() फलन को सबसे पहले कॉल (call) करता है। अत: main() फलन प्रत्येक प्रोग्राम में होना चाहिए।

प्रोग्राम की संरचना निम्नलिखित प्रकार होती है।

  1. प्री प्रोसेसर डायरेक्टिव तथा हैडर फाइल
    (Pre-Processor directive and Header file)
  2. ग्लोबल चर और फलन प्रोटोटाइप
    (Global declarations of variables and Function Prototype)
  3. main()
    फलन
  4. {
  5. लोकल चर और फलन प्रोटोटाइप मेन फलन के लिए
    (Local declarations of variables and Function Prototype of main function)
  6. एकल या मिश्रित वाक्य
    (Single or compound statements)
  7. }
  8. अन्य फलन का हैडर आरगमेन्ट के साथ
    (Header of other function with its arguments)
  9. {
  10. फलन के लोकल चर
    (Local variables of function)
  11. एकल या मिश्रित वाक्य
    (Single or compound statements)
  12. }

वर्णन
लाइन नं0 1: हम जो लाइब्रेरी फलन अपने प्रोग्राम में सम्मिलित करते हैं। उसके अनुसार हम हैडर फाइल को लिखते हैं। जिससे हैडर फाइल के सभी फलनों की परिभाषा प्रोग्राम के साथ जुड़ जाती है। अगर हमें अपने प्रोग्राम में गणितीय फलनों को सम्मिलित (जैसे-sin, cos और sqrt) करना हो तो हम निम्नलिखित लाइन लिखते हैं।
#include एक प्रोग्राम में एक या एक से ज्यादा हैडर फाइल हो सकती हैं, तथा इनको किसी भी क्रम में लिख सकते हैं।

प्री-प्रोसेसर डायरेक्टिव (Pre-Processor Directive)
ये कम्पाइलर द्वारा कम्पाइल (compile) करने से पूर्व निष्पादित किये जाते हैं। ये कम्पाइलर को कुछ निर्देश प्रदान करते हैं। कुछ प्री-प्रोसेसर डायरेक्टिव #include, #define आदि हैं।
#include प्री-प्रोसेसर हैडर फाइलों को प्रोग्राम में सम्मिलित करने हेतु उपयोग में लाया जाता है तथा #define सिम्बोलिक अचर (symbolic constant) घोषित करने हेतु उपयोग में लाया जाता है।
उदाहरण
#define A 10
A एक अचर होगा तथा इसका मान 10 होगा।

RBSE Solutions

लाइन नं0 2 : इस लाइन में चरों को घोषित (declare) किया जाता है। यहाँ पर घोषित चर प्रोग्राम के किसी भी भाग में उपयोग किये जा सकते हैं। यह फलनों में तब ही उपयोग किये जा सकते हैं जबकि वहाँ उसी नाम (identifier) का चर घोषित नहीं होता है।
उदाहरण:
int A :
float B; C:
यहाँ पर फलन के प्रोटोटाइप भी घोषित होते हैं तथा ये फलन प्रोग्राम के किसी भी भाग में कॉल हो सकते हैं।
उदाहरण:
int sum(int a, int b) ;
float max (float a, float b, float c) ;

लाइन नं0 3 : यह main () फलन होता है। सभी ‘C’ प्रोग्रामों में यह होना अति आवश्यक है। क्योंकि सर्वप्रथम कम्पाइलर main() फलन को ही कॉल करता है।

लाइन नं0 4 : बायाँ मंझला कोष्ठक से main() फलन की सीमा की शुरुआत होती है।

लाइन नं0 5 : मंझला कोष्ठक के बाद घोषित चर केवल main() फलन में ही उपयोग कर सकते हैं। इन्हें लोकल चर भी कह सकते हैं। ये ग्लोबल चरों (लाइन नं0 2) की तरह घोषित होते हैं। यहाँ पर फलन के प्रोटोटाइप भी घोषित होते हैं तथा ये फलन प्रोग्राम में केवल मेन फलन में ही कॉल हो सकते हैं।

लाइन नं06 : यहाँ पर main() फलन की परिभाषा लिखते हैं जिसमें एकल या मिश्रित वाक्य हो सकते हैं।
लाइन नं0 7 : दायाँ मंझला कोष्ठक से main() फलन की सीमा को बन्द करते हैं।

लाइन नं0 8,9,10, 11 और 12 : ये लाइनें, लाइन नं0 3,4,5,6,7 के जैसी हैं। इनमें लाइन नं० 8 पर फलन का शीर्ष (Header) लिखते हैं और सभी लाइनें main() फलन के बाद वाली लाइनों जैसी हैं।
इन लाइनों को प्रोग्राम में तब लिखते हैं जब कोई उपयोगकर्ता घोषित फलन (user define function) प्रोग्राम में लिखते हैं।

प्रश्न 2.
प्रोग्राम संरचना से क्या तात्पर्य है?
उत्तर-
किसी प्रोग्राम की संरचना कम्प्यूटर में प्रोग्राम के निष्पादन (execution) के लिए निर्धारित विधि होती है।

‘C’ भाषा का प्रोग्राम विभिन्न फलनों का समूह है। प्रत्येक फलन वाक्यों का समूह है जो कोई एक विशेष कार्य करता है। कम्पाइलर (Compiler) main() फलन को सबसे पहले कॉल (call) करता है। अतः main() फलन प्रत्येक प्रोग्राम में होना चाहिए। ‘C’ भाषा के प्रोग्राम की संरचना में हमें यह जानना अति आवश्यक है कि प्रोग्राम के कौन से वाक्यों को किस स्थान पर लिखना होगा। प्रोग्राम की संरचना निम्नलिखित प्रकार होती है

  1. प्री प्रोसेसर डायरेक्टिव तथा हैडर फाइल
    (Pre-Processor directive and Header file)
  2. ग्लोबल चर और फलन प्रोटोटाइप
    (Global declarations of variables and Function Prototype)
  3. main() फलन
  4. {
  5. लोकल चर और फलन प्रोटोटाइप मेन फलन के लिए
    (Local declarations of variables and Function Prototype of main function)
  6. एकल या मिश्रित वाक्य
    (Single or compound statements)
  7. }
  8. अन्य फलन का हैडर आरगुमेन्ट के साथ
    (Header of other function with its arguments)
  9. {
  10. फलन के लोकल चर
    (Local variables of function)
  11. एकल या मिश्रित वाक्य
    (Single or compound statements)
  12. }

प्रश्न 3.
डेटा टाइप कितने प्रकार के होते हैं? समझाइये।
उत्तर-
आंकड़ों का प्रकार (Data Type)
‘C’ प्रोग्रामिंग भाषा विभिन्न प्रकार के आंकड़ों का समर्थन करती हैं। आंकड़ों के इन प्रकारों का मेमोरी में साइज (size) भी भिन्न-भिन्न होता है। ‘सी’ भाषा में सामान्यतया चार प्रकार के आँकड़े काम में लिये जाते हैं।

  1. int पूर्णांक मान संचय के लिए
  2. char एक संप्रतीक को संचय करने के लिए
  3. float इकहरी शुद्धता वाली फ्लोटिंग पाईंट संख्या
  4. double दोहरी शुद्धता वाली फ्लोटिंग पाईंट संख्या

कुछ आंकड़ों के प्रकार, आकार, की-शब्द व अंक सीमाएँ सारणी में दी गई हैं।
RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 3

प्रश्न 4.
‘C’ भाषा में काम आने वाले इनपुट/आउटपुट कथनों को समझाइये।
उत्तर-
इनपुट-आउटपुट फलन (Input-Output Function)-साधारणतया किसी भी प्रोग्राम में आंकड़ों को पढ़ना, उस पर प्रक्रिया करना तथा आउटपुट देना, यह तीन कार्य किये जाते हैं। प्रोग्राम को इनपुट और आउटपुट देने के लिए इनपुट-आउटपुट फलनों का उपयोग किया जाता है। यह फलन है scanf(), printf (), getchar(), putchar()। इनपुट/आउटपुट दो प्रकार के होते हैं। संरूपित (formatted) तथा असंरूपित (unformatted) printf तथा scanf संरूपित तथा putchar तथा getchar असंरूपित I/O की श्रेणी में आते हैं।

कन्सॉल इनपुट/आउटपुट (Console I/O) –
कन्सॉल इनपुट/आउटपुट फलन को भी दो वर्गों में विभक्त किया जाता है

  1. अनफारमेटेड कन्सॉल इनपुट/आउटपुट फलन
    (Unformatted console input/output functions)
  2. फारमेटेड कन्सॉल इनपुट/आउटपुट फलन
    (Formatted console input/output functions)
    RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 4

1. आउटपुट फलन printf (Output Function printf)
आउटपुट फलन के द्वारा आँकड़ों को कम्प्यूटर मेमोरी से मानक आउटपुट युक्ति (Output device) या आउटपुट फाइल में भेजा जा सकता है। ‘सी’ भाषा में printf() फलन होता है जो आंकड़ों को कम्प्यूटर की स्मृति (Memory) से आउटपुट युक्ति पर भेजता है। printf() फलन निम्नलिखित प्रकार से लिखा जाता है।

RBSE Solutions

printf(“नियन्त्रण स्ट्रिंग’, चर1, चर2, चर3);

चर1, चर2 तथा चर3 वे चर हैं जिनके मान आउटपुट युक्ति पर भेजना है। नियन्त्रण स्ट्रिंग को डबल कोट्स (” “) के अन्दर लिखा जाता है। नियन्त्रण स्ट्रिग चरों को आंकड़ों के प्रकार के अनुसार लिखा जाता है। जैसे integer आंकड़े के लिए %d लिखा जाता है। नीचे दी गई सारणी में प्रयोग किये जाने वाले नियन्त्रण स्ट्रिग के प्रारूप को दर्शाया गया है।
RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 5
putchar()
फलन यह फलन कम्प्यूटर की मेमोरी से एक करेक्टर लेकर उसे मोनीटर पर दिखाता है। इसका सामान्य स्वरूप निम्नलिखित है:
putchar (संप्रतीक चर का नाम)
इसमें संप्रतीक चर पूर्व में घोषित चर है जिसका मान मोनीटर पर डिस्प्ले होगा।

उदाहरण :
chara a;
……
……
putchar (a)

पहले कथन से a संप्रतीक प्रकार का चर घोषित होता है। दूसरा कथन a चर के मान को आउटपुट युक्ति पर भेज देता है। putchar में आवश्यक है कि a संप्रतीक प्रकार का चर हो। अत: putchar (a) तथा printf(“%c”, a) दोनों कथन समतुल्य है।

scanf() फलन के द्वारा आंकड़ों को मानक इनपुट युक्ति (Input device-keyboard) से लेकर प्रोग्राम के विभिन्न चरों में भंडारित (store) किया जाता है। scanf() फलन निम्नलिखित प्रकार से लिखा जाता है

scanf(“कन्ट्रोल स्ट्रिग’,&चर1,&चर2,&चर3)

scanf में &चर1, &चर2 तथा &चर3 उन चरों के पते (address) हैं जहाँ पर की-बोर्ड द्वारा प्राप्त आंकड़ों को भंडारित करना है। इसमें चर से पूर्व & का चिह्न यह दर्शाता है कि यह उस चर का पता है न कि उसका मान। कन्ट्रोल स्ट्रिंग में % चिह्न के साथ printf फलन की भाँति अंग्रेजी वर्णमाला का अक्षर लिखा जाता है। जैसा पीछे सारणी में दर्शाया गया है।
उदाहरण :
scanf(“%d%d%d”, &NUM1, &NUM2, &NUM3);
NUM1, NUM2 तथा NUM3 पूर्णांक प्रकार के चर हैं। सभी चरों के लिए अलग-अलग कन्ट्रोल स्ट्रिग लिखना होता

getchar( ) फलन
यह फलन इनपुट युक्ति से एक करेक्टर लेता है और कम्प्यूटर को देता है। इसका सामान्य स्वरूप है :
चर-नाम = getchar();
उदाहरण:
char c;
…..
…..
c= getchar ();
उपर्युक्त उदाहरण में पहली पंक्ति में c नामक चर char प्रकार का घोषित किया गया है। जैसे ही दूसरा कथन c = getchar () निष्पादित किया जाता है कम्प्यूटर की-बोर्ड से कुंजी के दबने की प्रतीक्षा करता है (यदि डाटा बफर में नहीं है तो) तथा कुंजी दबने पर उस संप्रतीक को c में भंडारित कर देता है। अत: c= getchar () तथा scanf(“%c”, &c) दोनों कथन समतुल्य हैं।

प्रश्न 5.
संकारकों की प्राथमिकता तथा साहचर्य नियम से आप क्या समझते हैं? उदाहरण सहित समझाइये।
उत्तर-
यदि किसी व्यंजक में एक से अधिक संकारक होते हैं तो यह जानना आवश्यक हो जाता है कि उनको किस क्रम से निष्पादित करना है। इसके लिए इन संकारकों की प्राथमिकता निश्चित कर दी गई है। किसी व्यंजक में दो संकारक की प्राथमिकता समान (equal) होने पर उनका साहचर्य नियम के अनुसार सरलीकरण किया जाता है।
संकारकों की प्राथमिकता व साहचर्य नियम
(Precedence of Operators and their associativity rules)
RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 5
उदाहरण-
यदि x = 7, y = 3.0, Z = 2, A = 2.5, B = 7 हो तो निम्नांकित व्यंजक को हल करो।
X+Y/(2* A+ B/Z)
हल-
X+Y/(Z* A + B/Z)
=7+3.01 (2 * 2.5 +7/2)
=7+3.0/ (5.0+7/2)
=7+3.0/ (5.0 + 3)
=7+3.0/8.0
=7+ 0.375
=7.375

प्रश्न 6.
सभी इनपुट फलनों को उदाहरण सहित समझाइये।
उत्तर-
इनपुट फलन scanf (input function scanf)
scanf() फलन के द्वारा आंकड़ों को मानक इनपुट युक्ति (Input device-keyboard) से लेकर प्रोग्राम के विभिन्न चरों में भंडारित (store) किया जाता है। scanf() फलन निम्नलिखित प्रकार से लिखा जाता है

RBSE Solutions

scanf(“कन्ट्रोल स्ट्रिंग”,&चर1,&चर2,&चर3)

scanf में &चर1, &चर2 तथा &चर3 उन चरों के पते (address) हैं जहाँ पर की-बोर्ड द्वारा प्राप्त आंकड़ों को भंडारित करना है। इसमें चर से पूर्व & का चिन्ह यह दर्शाता है कि यह उस चर का पता है न कि उसका मान। कन्ट्रोल स्ट्रिंग में % चिह्न के साथ printf फलन की भाँति अंग्रेजी वर्णमाला का अक्षर लिखा जाता है।

उदाहरण :
scanf(“%d%d%d”, &NUM1, &NUM2, &NUM3);
NUMI, NUM2 तथा NUM3 पूर्णांक प्रकार के चर हैं। सभी चरों के लिए अलग-अलग कन्ट्रोल स्ट्रिग लिखना होता है।

उदाहरण :
तीन वास्तविक नम्बर पढ़कर उनमें से सबसे छोटा नम्बर ज्ञात करने हेतु ‘C’ भाषा में प्रोग्राम लिखिए।

#include
/* C program to read three float number and find smaller number. * /
main()
{
float, a, b, c, small; /* Declaration of float numbers*/
printf ("Enter three float Numbers : \n");
scanf("%f %f %f", &a, &b, &c); /*read three float numbers*/
if (a < b)
if (a < c)
small = a;
else
small = c;
else
if (b < c)
small = b;
else
small = c;
printf("\n The Smallest Number = %f", small);
}

Input : Enter three float Numbers :
78.23 78.96 85.52
Output : The Smallest Numbers : 85.52

Input: Enter three float Numbers :
23.23 23.15 23.16
Output : The Smallest Numbers : 23.15

getchar() फलन
यह फलन इनपुट युक्ति से एक करेक्टर लेता है और कम्प्यूटर को देता है। इसका सामान्य स्वरूप है :
चर-नाम = getchar();
उदाहरण- Char c;
………
………
C = getchar ( ) ;

उपर्युक्त उदाहरण में पहली पंक्ति में C नामक चर char प्रकार को घोषित किया गया है। जैसा ही दूसरा कथन C = getchar () निष्पादित किया जाता है कम्प्यूटर की बोर्ड से कुंजी के दबने की प्रतीक्षा करता है (यदि डाटा बफर में नहीं है तो) तथा कुँजी दबने पर उस संप्रतीक को C में भंडारित कर देता है। अत: C = getchar (.) तथा scanf (“% c”, Sc) दोनों कथन समतुल्य हैं।

प्रश्न 7.
आउटपुट फलनों के द्वारा किस प्रकार आउटपुट प्राप्त किया जाता है? उदाहरण सहित समझाइये।
उत्तर-
(i) आउटपुट फलन printf (Output Function Printf)-आउटपुट फलन के द्वारा आँकड़ों को कम्प्यूटर मेमोरी से मानक आउटपुट युक्ति (Output device) या आउटपुट फाइल में भेजा जा सकता है। ‘सी’ भाषा में printf() फलन होता है जो आंकड़ों को कम्प्यूटर की स्मृति (Memory) से आउटपुट युक्ति पर भेजता है। printf() फलन निम्नलिखित प्रकार से लिखा जाता है।

printf(“नियन्त्रण स्ट्रिग”, चर1, चर2, चर3);

चर1, चर2 तथा चर3 वे चर हैं जिनके मान आउटपुट युक्ति पर भेजना है। नियन्त्रण स्ट्रिंग को डबल कोट्स (” “) के अन्दर लिखा जाता है। नियन्त्रण स्ट्रिंग चरों को आंकड़ों के प्रकार के अनुसार लिखा जाता है। जैसे integer आंकड़े के लिए %d लिखा जाता है। नीचे दी गई सारणी में प्रयोग किये जाने वाले नियन्त्रण स्ट्रिग के प्रारूपों को दर्शाया गया है।
RBSE Solutions for Class 11 Computer Science Chapter 1 'सी' भाषा का परिचय image - 7
उदाहरण:
A= 20, B = 30
printf(“%d %d”, A, B)
Output : 20 30

A और B पूर्णांक प्रकार के चर हैं तथा कन्ट्रोल स्ट्रिग के अनुसार A व B के मान प्रिन्ट होते हैं।
printf फलन किसी भी स्ट्रिग को ज्यों का त्यों प्रिन्ट करता है।

उदाहरण :
printf (“C is a good programming language.”)
Output : C is a good programming language.

(ii) putchar( ) फलन – यह फलन कम्प्यूटर की मेमोरी से एक करेक्टर लेकर उसे मोनीटर पर दिखाता है। इसका सामान्य स्वरूप निम्नलिखित प्रकार है
putchar (संप्रतीक चर का नाम);
इसमें संप्रतीक चर पूर्व में घोषित चर है जिसका मान मोनीटर पर डिस्प्ले होगा।
उदाहरण :
char a;
…..
…..
putchar (a)

प्रश्न 8.
निम्नांकित व्यंजकों को ‘C’ के समतुल्य व्यंजकों में बदलिये।
(i) \(a+\frac{b}{c}+d\)
उत्तर:

# include 
main ()
{
float a, b, c, d, s;
printf ("Enter the values of a, b, c and d : \n");
scanf ("% f %f %f %f", &a, &b, &c, &d);
S = a + (b/c) + d;
printf("\n The value of s = %f", s);
getch();
}

Input/output of the above program :
Enter the values of a, b, c and d : 2 10 5 5
The value of s = 9

(ii) A = πr²
उत्तर:

#include
main()
{
float r, A ;
printf ("Enter the value of radius r = : \n");
scanf("%d", &r) ;
A = 3.14 * r * r ;
printf ("The value of area = %f", A) ;
getch();
}

Input/output of the above program ;
Enter the value of radius r = 10
The value of A = 314

RBSE Solutions

(iii) c = a² + b²
उत्तर:

# include 
main()
{
int a, b, c ;
printf("Enter the value of a and b: "\n) ;
scanf("%d %d", &a, &b);
c = a * a + b * b;
printf("The value of c = %d", c) ;
getch ();
}

Intput/output of the above program :
Enter the value of a and b: 25
The value of c = 29

(iv) \(x=\frac{-b+\sqrt{b^{2}-4 a c}}{2 a}\)
उत्तर

#include 
main()
{
float a, b, c, d, x
printf ("Enter the values of a, b, c :");
scanf("%f %f %f", &a, &b, &c);
d = (b * b) - (4 * a * c);
k = sqrt (d) ;
x = (- b + k) / (2 * a) ;
printf ("The value of x = % f", x);
getch ();
}

Input/output of the above program :
Enter the value of a, b, c : 2, 8, 5
The value of x = -0.7775

प्रश्न 9.
तीन संख्याओं को पढ़कर उनमें से सबसे बड़ी संख्या ज्ञात करने के लिए कन्डीशनल संकारक का उपयोग करके प्रोग्राम लिखो।
उत्तर-

# include <stdio.h>
main ()
{
int a, b, c, big ; 
printf ("Enter three numbers : "); 
scanf ("%d %d %d", &a, &b, &c); 
big = a > b ? (a > c ? a : c) : (b > c ? b : c); 
printf ("\n The biggest number is : %d", big) ; 
getch ();
}

Output: Enter three numbers : 5, 12, 8
The biggest number is : 12 .

प्रश्न 10.
लूपिंग के लिए कौन-कौन से कथन उपयोग किये जाते हैं? वर्णन कीजिए।
उत्तर-
1. लूपिंग (Looping)-निर्णय सम्बन्धी कथनों के अतिरिक्त प्रोग्राम में कुछ कथनों को एक से अधिक बार निष्पादित करने की आवश्यकता होती है। कुछ कथनों का निष्पादन बार-बार उसी क्रम में दोहराया जाता है तब यह क्रिया लूपिंग (looping) कहलाती है। for, while तथा do-while तीन लूप कथन ‘C’ भाषा में होते हैं। इन सभी कथनों के दो भाग होते हैं

  • लूपिंग काया (looping body)
  • नियन्त्रण कथन (condition)

लूप कथन में नियन्त्रण कथन की जांच होती है और यदि यह True रहता है तो लूप निष्पादित होता है अन्यथा नियंत्रण प्रवाह लूप से बाहर आ जाएगा।

1. for लूप (for loop)
for कथन का सामान्य स्वरूप निम्नलिखित होता है
for (exp1 ; exp2 ; exp3)
{
लूप काया
}

जहाँ exp1 : यह लूप के काउण्टर चर का आरम्भिक मान बताता है और यह व्यंजक एक ही बार निष्पादित होता है।
exp2 : यह एक कण्डीशन व्यंजक होता है। अगर यह True होता है तो लूप निष्पादित होता रहता है।
exp3 : वृद्धि/ह्रास कथन का उपयोग काउण्टर चर का मान बढ़ाने/घटाने के लिए होता है।

उदाहरण:
(a) for (i= 0;i< 10;i++)
printf(“%d”, i);
(b) for (j = 1;j<20 ;j+ = 2)
{
printf(“%d\n”,j);
SUM = SUM +j;
{
printf(“SUM = %d”, SUM);

2. while लूप (while loop)
जब लूप का निष्पादन करने से पूर्व यह ज्ञात नहीं होता कि लूप को कितनी बार चलाना है तो यह एक कन्डीशन पर निर्भर होता है। जब तक यह कण्डीशन True रहती है तब तक लूप के कथन बार-बार निष्पादित होते रहते हैं। जैसे ही कन्डीशन False होती है लूप का निष्पादन रुक जाता है। इसको निम्नलिखित तरह से लिखा जाता है :

while (कन्डीशन)
{
लूप काया
}

उदाहरण :
(a) while (i < 10) / * i का प्रारम्भिक मान 1 है * /
{
printf(“%d”, i);
i ++:
}
(b) while (j < = 20) /* initial value of j is one */
{
printf(“%d”,j);
SUM = SUM + j;
j+ = 2 ;
}
printf(“SUM = %d”, SUM);

3. do-while लूप (do-while loop)
do-while लूप भी while लूप की तरह एक लूपिंग कथन है। while लूप में पहले कन्डीशन को जाँचा जाता है उसके बाद लूप काया को निष्पादित किया जाता है। जबकि do-while लूप में पहले लूप काया को निष्पादित किया जाता है उसके बाद कन्डीशन को जाँचा जाता है। अत: do-while लूप कम से कम एक बार तो निष्पादित होता है। do-while लूप भी while लूप की तरह ही True कन्डीशन पर निष्पादित होता है। इसका सामान्य रूप निम्नलिखित प्रकार होता है

RBSE Solutions

do
{
लूप काया
}
while (कन्डीशन);

उदाहरण:
(a)do
{
printf(“%d”, i);/ * ?initial value of i is one */
1 ++ ;
}
while (i < 10) ;
(b) do/ * initial value of jis one * /
{
printf(“%d”, j);
SUM + = j;
j + = 2. ;
}
while (j < = 20) ;

प्रश्न 11.
1 से 50 तक की सभी विषम संख्याओं को प्रिन्ट करने हेतु ‘C’ भाषा में प्रोग्राम लिखिये।
उत्तर-

#include <stdio.h>
main()
{
int n; 
printf ("Odd numbers between 1 to 50\n"); 
n = 1;
while (n < = 50)
{
printf ("%d", n) ;
n = n + 2 ;
}
return 0;
}

Output :
Odd numbers between 1 to 50
1 3 5 7 9 11 13 15 17 19 21 23 25
27 29 31 33 35 37 39 41 43 45 47 49

प्रश्न 12.
while लूप और do-while लूप में अन्तर उदाहरण सहित समझाइये।
उत्तर-
while लूप
जब लूप का निष्पादन करने से पूर्व यह ज्ञात नहीं होता कि लूप को कितनी बार चलाना है तो यह एक कन्डीशन पर निर्भर होता है। जब तक यह कन्डीशन True रहती है तब तक लूप के कथन बार-बार निष्पादित होते रहते हैं। जैसे ही कन्डीशन False होती है लूप का निष्पादन रुक जाता है। इसको निम्नांकित प्रकार से लिखा जाता है :

while (कन्डीशन)
{
लूप काया
}

उदाहरण :
while (i < 10) / * 1 का प्रारम्भिक मान 1 है * /
{
printf(“%d”, i);
i ++;
}

Output : 1 2 3 4 5 6 7 8 9

do-while लूप (do-while loop)
do-while लूप भी while लूप की तरह एक लूपिंग कथन है। while लूप में पहले कन्डीशन को जाँचा जाता है उसके बाद लूप काया को निष्पादित किया जाता है। जबकि do-while लूप में पहले लूप काया को निष्पादित किया जाता है उसके बाद कन्डीशन को जाँचा जाता है। अतः do-while लूप कम से कम एक बार तो निष्पादित होता है। do-while लूप भी while लूप की तरह ही True कन्डीशन पर निष्पादित होता है। इसका सामान्य रूप निम्नलिखित प्रकार होता है

do
{
लूप काया
}
while (कन्डीशन);

उदाहरण:
(a) do
{
printf(“%d”, i);/ * initial value of i is one */
i ++ ;
}
while (i < 10);

Output : 1 2 3 4 5 6 7 8 9

प्रश्न 13.
निम्नलिखित श्रेणी का योग ज्ञात करने के लिए प्रोग्राम लिखिये।
1+x+x²+x³ ……….xn
उत्तर.

# include <stdio.h>
main ()
{
int x, n, t;
long sum = 1 ; 
printf("Enter the value of 'x' : ") ;
scanf ("%d", &x); 
printf("\n Enter the value of 'n' : ") ;
scanf ("%d", &n);
t = x; 
while (n > 0)
{
sum = sum + t; 
t:= t * x ;
n——;
}
printf (“sum of the series is = % ld”, sum) ;
getch() ;
}
RBSE Solutions

RBSE Solutions for Class 11 Computer Science