RBSE Solutions for Class 11 Computer Science Chapter 2 ‘सी’ भाषा की प्रोग्रामिंग

Rajasthan Board RBSE Class 11 Computer Science Chapter 2 ‘सी’ भाषा की प्रोग्रामिंग

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

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

प्रश्न 1.
एक ही प्रकार के विभिन्न मानों का समूह कहलाता है
(अ) ऐरे
(ब) फलन
(स) स्ट्रिंग
(द) इनमें से कोई नहीं
उत्तर:
(अ) ऐरे

प्रश्न 2.
float arr [3][2] में कितने अवयव होते हैं?
(अ) 2
(ब) 3
(स) 6
(द) 9
उत्तर:
(स) 6

प्रश्न 3.
निम्नलिखित में से कौन-सा कथन असत्य है?
(अ) ग्लोबल चर सारे प्रोग्राम में उपयोग किया जा सकता है।
(ब) auto चर main() फलन में घोषित किए जाते हैं।
(स) लोकल चर केवल उसी फलन या ब्लॉक में कार्य नहीं करते हैं।
(द) लोकल चर एक ही नाम से अलग-अलग फलनों में घोषित किये जा सकते हैं।
उत्तर:
(ब) auto चर main() फलन में घोषित किए जाते हैं।

प्रश्न 4:
फलन in add(int x) का आह्वान करने के लिए निम्नलिखित में से कौन सा कथन सत्य है?
(अ) add();
(ब) add(x);
(स) add(int x);
(द) int add (int x);
उत्तर:
(स) add(int x);

प्रश्न 5.
फलन को कितने प्रकार से कॉल कर सकते हैं?
(अ) 2
(ब) 1
(स) 3
(द) 4
उत्तर:
(अ) 2

प्रश्न 6.
फलन कितने प्रकार के होते हैं?
(अ) 1
(ब) 2
(स) 4
(द) 3
उत्तर:
(ब) 2

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

प्रश्न 7.
संकेतक चर में स्टोर होता है :
(अ) पूर्णांक मान
(ब) कोई भी मान
(स) किसी अन्य चर का एड्रस
(द) इनमें से कोई नहीं
उत्तर:
(ब) कोई भी मान

प्रश्न 8.
int B = 10%;
int * A = &B; printf(“%d”, *A) प्रिन्ट करेगा :
(अ) 10
(ब) A चर का एड्रेस
(स) B चर का एड्रेस
(द) प्रोग्राम के अनुसार प्रिन्ट करेगा
उत्तर:
(अ) 10

प्रश्न 9.
int *A
A = (int*) malloc(sizeof(int) *10);
printf(“%d” . A) : प्रिन्ट करेगा :
(अ) A चर का ऐड्रेस
(ब) ऐरे के प्रथम मान एड्रेस
(स) ऐरे का प्रथम मान
(द) कोई मान प्रिन्ट नहीं करेगा
उत्तर:
(ब) ऐरे के प्रथम मान एड्रेस

प्रश्न 10.
संरचना का सदस्य हो सकता है :
(अ) चर
(ब) पूर्णांक चर
(स) फ्लोटिंग चर
(द) ये सभी
उत्तर:
(द) ये सभी

प्रश्न 11.
किसी संरचना के सदस्यों को ऐक्सेस करने हेतु कौन से चिह्न को उपयोग में लेते हैं?
(अ) . (dot)
(ब) *
(स) ®
(द) &
उत्तर:
(अ) . (dot)

प्रश्न 12.
a = 1011
b = 1111 तथा
x = a & b तो x का मान होगा :
(अ) 10
(ब) 11
(स) 12
(द) 13
उत्तर:
(ब) 11

प्रश्न 13.
यदि किसी संघ (Union) में int, float तथा double प्रकार के आँकड़े हैं तो उपर्युक्त संघ के लिए कितनी मेमोरी एलोकेट होगी?
(अ) 2 bytes
(ब) 4 bytes
(स) 10 bytes
(द) 8 bytes
उत्तर:
(द) 8 bytes

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

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

प्रश्न 1.
return कथन कहाँ लिखा जाता है?
उत्तर-
return कथन के लिए यह आवश्यक नहीं है कि यह कथन अंत में ही लिखा जाए, आवश्यकतानुसार यह कहीं भी लिखा जा सकता है।

प्रश्न 2.
प्राचल कितने प्रकार के होते हैं?
उत्तर-
प्राचल दो प्रकार के होते हैं
वास्तविक प्राचल (Actual Parameters)
औपचारिक प्राचल (Formal/Dummy Parameters)

प्रश्न 3.
लोकल चर किन्हें कहते हैं?
उत्तर-
लोकल चर फलन के अन्दर घोषित होते हैं। फलन के हैडर में लिखे चर भी लोकल चर कहलाते हैं।

प्रश्न 4.
‘\O’ संप्रतीक किस हेडर फाइल में सम्मिलित होता है?
उत्तर-
‘\O’ संप्रतीक stdio.h फाइल में सम्मिलित होता है।

प्रश्न 5.
एक विमा वाली एरे को किस प्रकार घोषित करते हैं?
उत्तर-
एक विमा वाली एरे की घोषणा निम्नलिखित प्रकार करते हैं
<एरे का प्रकार><ऐरे का नाम><[साइज]>

प्रश्न 6.
किसी पॉइन्टर चर को किस प्रकार घोषित करते हैं?
उत्तर-
* संकारक द्वारा पॉइन्टर चर को घोषित करते हैं। पॉइन्टर चर को निम्नलिखित प्रकार घोषित करते हैं
int *A;
float *B;

प्रश्न 7.
int A;
A के पते को किस प्रकार प्रिन्ट करते हैं?
उत्तर-
printf(“%u”, &i);

प्रश्न 8.
free () फलन के द्वारा मैमोरी को कैसे छोड़ते हैं?
उत्तर-
free () फलन का उपयोग मैमोरी को छोड़ने के लिए होता है। इसको निम्नलिखित प्रकार लिखते हैं
free (str);
str एक संकेतक है, जिसमें calloc() या malloc() फलन द्वारा मैमोरी एलोकेशन की गई है।

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

प्रश्न 9.
संरचना में सदस्यों को किस प्रकार घोषित करते हैं?
उत्तर-
संरचना में सदस्यों को घोषित करने की रचना (syntax) निम्नलिखित है
struct <tag>
{
<data type> member 1;
<data type> member 2, member 3;
……………….
……………….
<data type> member n;
variable/;
}

प्रश्न 10.
संरचना के संदस्यों का प्रारम्भिकरण द्वारा मान कैसे लिखते हैं?
उत्तर-
संरचना के सदस्यों का प्रारम्भिकरण द्वारा मान का उदाहरण :
struct employee emp 1 = { “sangeeta Gupta”, 8000,”153, Arya Nagar”, 1200};

प्रश्न 11.
malloc( ) फलन किस हैडर फाइल में उपलब्ध है?
उत्तर-
malloc() फलन stdlid.h हैडर फाइल में उपलब्ध होता है।

प्रश्न 12.
संरचना में सदस्यों को किस प्रकार घोषित करते हैं?
उत्तर-
संरचना में सदस्यों को घोषित करने की रचना (syntax) निम्नलिखित है
struct <tag>
{
<data type> member 1;
<data type> member 2, member 3;
………………………
………………………
<data type> member n;.
variable/;
}

प्रश्न 13.
संरचना के सदस्यों का प्रारम्भिकरण के द्वारा मान कैसे लिखते हैं?
उत्तर-
संरचना के सदस्यों का प्रारम्भिकरण द्वारा मान का उदाहरण :
struct employee emp 1 = { “Sangeeta Gupta”, 8000, “153, Arya Nagar”, 1200 };

प्रश्न 14.
हम किसी चर के लिए बिट्स किसके द्वारा एलोकेट करवाते हैं?
उत्तर-
हम malloc() फलन के द्वारा किसी चर के लिए बिट्स एलोकेट करवाते हैं।

प्रश्न 15.
नया डाटा टाइप बनाने के लिए कौन-सा की-वर्ड काम में लेते हैं?
उत्तर-
नया डाटा टाइप बनाने के लिए typedef की-वर्ड काम में लेते हैं।

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

प्रश्न 1.
लोकल चर किन्हें कहते हैं?
उत्तर-
लोकल चर फलन के अन्दर घोषित होते हैं। फलन के हैडर में लिखे चर भी लोकल चर कहलाते हैं। लोकल चरों की सीमा फलन की सीमा ही होती है। अत: लोकल चर केवल फलन के अन्दर ही कार्य करते हैं।

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

प्रश्न 2.
दो विमाओं वाली एरे की घोषणा का एक उदाहरण लिखो।
उत्तर-
दो विमाओं वाली एरे की घोषणा निम्नलिखित प्रकार है;
<एरे का प्रकार> <एरे का नाम> [अधिकतम सीमा 1] [अधिकतम सीमा 2]
उदाहरण-
int MAT [3] [3] = {{1, 2, 3} {4, 5, 6}};
इस एरे की कुल क्षमता 9 है तथा कोष्ठक में कुल 6 मान हैं अत: बाकि तीन मान शून्य होंगे।
एरे के मान निम्नलिखित होंगें
MAT [0] [0] = 1 MAT [0] [1] = 2 MAT [0] [2] = 3
MAT [1] [0] = 4 MAT [1] [1] = 5 MAT [1] [2] = 6
MAT [2] [0] = 0 MAT [2] [0] = 0 MAT [2] [2] = 0

प्रश्न 3.
फलन को किस प्रकार घोषित करते हैं?
उत्तर-
सभी उच्च स्तरीय भाषाओं में यह प्रावधान है कि किसी कथन खण्ड को अलग नाम देकर स्वतन्त्र रूप से लिखा जा सके तथा जब भी और जितनी बार भी उस कथन खण्ड की आवश्यकता हो उसका आह्वान कर लिया जाता है। इस स्वतन्त्र खण्ड (प्रोग्राम) को उप प्रोग्राम या फलन कहते हैं।
‘C’ भाषा में किसी प्रयोक्ता फलन को निम्नलिखित प्रकार से परिभाषित करते हैं।
वापसी का प्रकार फलन-नाम (प्राचलों की सूची)
{
स्थानीय चरों की सूची (Local Variables)
फलन प्रक्रिया में लिखे जाने वाले कथन की फलन काया
(function body) (व्यंजक व चर)
}

प्रश्न 4.
फलन कितने प्रकार के होते हैं?
उत्तर-
फलनों के प्रकार (Types of Functions)
फलन को मुख्य रूप से दो भागों में बाँटा जा सकता है

  1. लाइब्रेरी फलन (Library Functions)
  2. प्रयोक्ता परिभाषित फलन (User Defined Functions)

1. लाइब्रेरी फलन (Library Functions)-जो फलन भाषा में पहले से ही परिभाषित होते हैं, लाइब्रेरी फलन कहलाते हैं। इन्हें सीधा ही प्रोग्राम में उपयोग कर सकते हैं। लगभग प्रत्येक उच्च स्तरीय भाषा में इस प्रकार की सुविधा उपलब्ध है। सामान्य रूप से प्रयोग में आने वाले कई फलनों का संग्रह लाइब्रेरी के रूप में बहुत उपयोगी रहता है। इससे हमें कई बड़े प्रोग्राम बनाने में आसानी रहती है। सारणी में लाइब्रेरी फलन दर्शाये गए हैं।
RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग image - 1
2. प्रयोक्ता परिभाषित फलन (User Defined Functions)-सभी आवश्यकताओं को पूरा कर सके ऐसी लाइब्रेरी का होना बहुत मुश्किल है। बहुत बार ऐसी आवश्यकता होती है कि हमें निर्देशों के समूह को कई बार निष्पादित करना होता है और ऐसा समूह किसी फलन के रूप में लाइब्रेरी में उपलब्ध नहीं होता। तब प्रयोक्ता परिभाषित फलनों की आवश्यकता पड़ती है। ऐसे फलन जिन्हें प्रयोक्ता अपनी आवश्यकतानुसार बनाता है, प्रयोक्ता परिभाषित फलन (User Defined Function) कहलाते हैं। एक प्रोग्राम में एक से ज्यादा प्रयोक्ता परिभाषित फलन बनाए जा सकते हैं। एक प्रयोक्ता परिभाषित फलन को मुख्य फलन के ऊपर अथवा नीचे दोनों तरफ लिख सकते हैं।

प्रश्न 5.
एरे की घोषणा किस प्रकार करते हैं?
उत्तर-
एरे को भी अन्य चरों के समान एरे के उपयोग से पूर्व घोषित करना आवश्यक है। एरे की घोषणा में तीन चीजों की घोषणा की जाती है

  • एरे का प्रकार
  • एरे का नाम
  • एरे की क्षमता (कुल अवयवों की संख्या)

जब एरे घोषित किया जाता है तो एरे के साइज के बराबर स्थान मैमोरी में आवंटित कर दिया जाता है। एरे की घोषणा निम्नलिखित प्रकार करते हैं
<एरे का प्रकार> <एरे का नाम> <[साइज]>
उदाहरण : int marks[50];
यहाँ int marks[50] बताता है कि marks नामक एरे का आकार 50 है तथा यह पूर्णांक को भण्डारित कर सकता है।

प्रश्न 6.
पुनरावर्तन की दो मुख्य कण्डीशन बताइए।
उत्तर-
पुनरावर्तन वह प्रक्रिया है जिसमें कोई फलन अपने आप (itself) का ही आह्वान (call) करता है जब तक कि कोई विशेष वर्णित कन्डीशन संतुष्ट (satisfy) नहीं होती है। पुनरावर्तन की दो मुख्य कन्डीशन हैं

  • फलन अपने आपको स्वयं आह्वान (call) करे।
  • फलन में कोई ऐसी कन्डीशन होनी चाहिए जिसके सन्तुष्ट होने पर पुनरावर्तन रुक जाए।

प्रश्न 7.
पॉइन्टर चर क्या है?
उत्तर-
पॉइन्टर एक चर है जिसमें आँकड़े का पता (मैमोरी में आँकड़े का पता) भंडारित (store) होता है। C भाषा में उच्च तथा जटिल प्रोग्राम बनाने के लिए पॉइन्टर का उपयोग किया जाता है। कोई भी चर अपने आँकड़ों के प्रकार (data type) के अनुसार मैमोरी भंडारित करता है।

  • संकारक द्वारा पॉइन्टर चर को घोषित करते है तथा पॉइन्टर चर में स्टोर एड्रेस (Address) पर मान ज्ञात करने के उपयोग आता है।

प्रश्न 8.
int *A = {10, 20, 30};
अगर A का बेस एड्रेस 2000 है तो सभी मानों के एड्रेस लिखिए।
उत्तर-
Address of 10 = 2000
Address of 20 = 2002
Address of 30 = 2004

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

प्रश्न 9.
एक पॉइन्टर चर द्वारा एरे को किस प्रकार घोषित करते हैं?
उत्तर-
एक पॉइन्टर चर द्वारा एरे को घोषित करने का उदाहरण निम्नांकित है

#include
#include
main()
{
int *ptr, I;
int A [5] = {7, 9, 1, 2, 4};
prt = A;
clrscr();
for (I = 0; I< +5; I++) .
{
printf("\n I=%d ptr [I] = %d", I, ptr [I]);
printf("* (A + I) = %d &ptr [I] = %x", * (A + I), &ptr [I]);
printf(" (A + I) = %x", ptr [I] );
}
getch();
}

आउटपुट निम्नांकित होगा
I = 0 ptr [I] = 7 *(A + I) = 7 &ptr[I] = ffca (A + I) = ffca
I = 1 ptr [I] = 9 *(A + I) = 9 &ptr[I] = ffcc (A + I) = ffcc
I = 2 ptr [I] = 1 *(A + I) = 1 &ptr[I] = ffce (A + I) = ffce
I = 3 ptr [I] = 2 *(A + I) = 2 &ptr[I] = ffd0 (A + I) = ffd0
I = 4 ptr [I] = 4 *(A + I) = 4 &ptr[I] = ffd2 (A + I) = ffd2

प्रश्न 10.
संरचना क्या है? समझाइये।
उत्तर-
संरचना (Structure)–संरचना (Structure) में विभिन्न प्रकार के अवयवों को एक साथ रख सकते हैं। अत: एक संरचना में उपयोगकर्ता (user) के अनुसार int, float, double, char और array प्रकार अलग-अलग आँकड़ों का उपयोग कर सकते हैं। संरचना के प्रत्येक अवयव को सदस्य (member) कहते हैं। संरचना में प्रत्येक सदस्य की घोषणा की जाती है।

प्रश्न 11.
छात्र संरचना जिसके सदस्य name, address, roll no. हैं, लिखिए।
उत्तर-

struct student
{
char name [20];
int roll_no;
char address [50] ;
}
S1;

प्रश्न 12.
बिट् फील्ड्स के द्वारा मेल/फिमेल का मान 0 या 1 स्टोर करने के लिए किस प्रकार घोषित करेंगे।
उत्तर-

#include
struct person 1
{
int age : 7;
}
st 1;
struct person 2
{
int age;
}
st 2;

प्रश्न 13.
निरूपित आँकड़ों का एक उदाहरण लिखिए।
उत्तर-
निरूपित आँकड़ों का एक उदाहरण एरे (Array) है। एरे एक चर है जो एक साथ एक ही प्रकार के आँकड़ों को एकत्रित कर सकता है। कई बार ऐसी आवश्यकता होती है जब हम एक प्रकार के आपस में सम्बन्धित मानों का उपयोग करते हैं। तब यह कठिन होता है कि सभी के मान अलग-अलग चर में स्टोर (store) करें। अत: एक ही चर के द्वारा इन सभी को दर्शाया जा सकता है। इसमें समूह के प्रत्येक घटक को उसके सूचकांक (Index) द्वारा उल्लेख करते हैं। आँकड़ों का प्रकार char, int, float, double etc. हो सकता है।

एरे की घोषणा निम्नलिखित प्रकार करते हैं
<एरे का प्रकार> <एरे का नाम> <[साइज]>

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

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

प्रश्न 1.
पॉइन्टर के लाभ लिखिये।
उत्तर-
पॉइन्टर (Pointer) एक उपयोगी तथा शक्तिशाली टूल है। प्रत्येक चर जिस स्थान पर प्राथमिक मैमोरी में स्टोर होता है। उसे उस चर का पता (Address) कहते हैं। प्रत्येक चर के लिए एक मैमोरी एड्रेस (Address) होता है।

पॉइन्टर एक चर है जिसमें आँकड़े का पता (मैमोरी में आँकड़े का पता) भंडारित होता है। C भाषा में उच्च तथा जटिल प्रोग्राम बनाने के लिए पॉइन्टर का उपयोग किया जाता है। पॉइन्टर के निम्नलिखित लाभ हैं

  • C में पॉइन्टर का उपयोग करके कई task बहुत आसानी से पूरे किये जा सकते हैं। जैसे कि बिना Pointer का उपयोग कर Dynamic Memory Allocate नहीं किया जा सकता है।
  • पॉइन्टर की मदद से data structure create कर सकते हैं।
  • पॉइन्टर को use करने से प्रोग्राम का execution time कम हो जाता है।
  • पॉइन्टर की मदद से आप function में एक से अधिक value return कर सकते हैं।
  • पॉइन्टर की मदद से argument passing के दौरान variable की copy के बजाय original variable पर काम कर सकते हैं।
  • आँकड़ों की सारणी को संकेतक कुशलता से नियंत्रित करते हैं।
  • संकेतक के द्वारा फलन में सूचना को भेज सकते हैं जिससे यह फलन में किये गए बदलाव का कॉल किये गए चरों में भी अपने आप बदलाव हो जाता है।
  • ये प्रोग्राम निष्पादन की गति बढ़ा देते हैं।
  • इसके द्वारा एरे के तत्व को आसानी से एक्सेस (Access) कर सकते हैं।
  • संकेतक की सहायता से फलन से बाहर घोषित चर को भी एक्सेस कर सकते हैं।

प्रश्न 2.
पॉइन्टर के द्वारा एरे को किस प्रकार घोषित करते हैं? उदाहरण सहितं समझाइए।
उत्तर-
एरे को घोषित करते समय ही एरे के लिए स्थान निश्चित हो जाता है। जिसमें एरे के अवयव भंडारित कर दिये जाते हैं। इस एरे का बेस पता (Base Address) उस एरे के प्रथम अवयव के स्थान का पता होता है।

माना एक एरे A जो निम्नलिखित प्रकार से घोषित की गई है :
int A [5] = {7, 9, 15, 12, 14};

यह भी माना कि इसका बेस पता 2000 है। चूंकि पूर्णांक (int) दो बाइट का स्थान घेरता है अतः एरे A के पाँच अवयव निम्न प्रकार से भंडारित होंगे।

हमें यह भी ज्ञात है कि एरे का नाम भी एरे का बेस पता को बतलाता है। अत: A और &A[10] दोनों ही एरे के पहले अवयव का पता (Base Address) बताते हैं तथा एरे के अवयव मैमोरी में लगातार स्टोर होते हैं।

इसी प्रकार पॉइन्टर चर भी उस मैमोरी ब्लॉक के बेस एड्रेस को ही स्टोर करता है। अतः एरे और पॉइन्टर को एक-दूसरे के साथ आपस में बदल सकते हैं।
उदाहरण:

int*ptr;
int A [5] = {7, 9, 15; 12, 14};
ptr = A/*ptr = *A [0] */

उपर्युक्त उदाहरण में pr और A दोनों ही एरे की तरह कार्य करेंगे। दोनों को ही हम पॉइन्टर रूप में तथा परम्परागत रूप में उपयोग कर सकते हैं।

जैसे ptr[1] का मान 9 होगा तथा *(A + 1) का मान 9 होगा। इसको निम्नांकित उदाहरण से समझा जा सकता है।
प्रोग्राम :

RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

#include
#include
main ()
{
int*ptr, I;
intA [5] = {7, 9, 1, 2, 4};
ptr = A;
clrscr();
for (I = 0 . < +5 . I++)
{
printf("\nI = %d ptr [I] = d", I, ptr [I]);
printf("* (A + I) = % & ptr [I] = %x", * (A + I), *ptr [I]);
printf(" (A + I) = %x", ptr [I]);
}
getch();
}

आउटपुट निम्नांकित होगा :
I = 0 ptr [I] = 7 *(A + I) = 7 &ptr[I] = ffca (A + I) = ffca
I = 1 ptr [I] = 9 *(A + I) = 9 &ptr[I] = ffcc (A + I) = ffcc
I = 2 ptr [I] = 1 *(A + I) = 1 &ptr[I] = ffce (A+ I) = ffce
I = 3 ptr [I] = 2 *(A + I) = 2 &ptr[I] = ffd0 (A + I) = ffdo
I = 4 ptr [I] = 4 *(A + I) = 4 &ptr[I] = ffd2 (A + I) = ffd2

उपर्युक्त प्रोग्राम में पॉइन्टर चर को परम्परागत रूप में तथा एरे को पॉइन्टर रूप में लिखा गया है। जोकि यह दर्शाता है कि एक विमीय एरे तथा पॉइन्टर को आपस में बदला जा सकता है। यहाँ पर ध्यान रखना आवश्यक है कि अगर पॉइन्टर चर में 1 को जोड़ते हैं तो उसमें 2 बाइट्स बढ़ते हैं। यह इसमें स्टोर डाटा प्रकार पर निर्भर करता है। यदि यह long int होगा तो पॉइन्टर चर में 1 को जोड़ते हैं तो चार बाइट बढ़ते हैं।

प्रश्न 3.
संरचना का उपयोग करते हुए 10 नाम, पते तथा फोन नंबर भंडारित करो। इन्हें नाम के वर्णमाला क्रम में व्यवस्थित करो। व्यवस्थित क्रम को प्रिन्ट करने हेतु प्रोग्राम लिखिए।
उत्तर-

#include
#include
#include
struct person
{
char name [10];
char address [20];
int phn_no;
}
typedef struct person NAME;
NAME stud [10], temp [10];
Void main ()
{
int no, i;
void sort (int N); /* function declaration */
clrscr();
printf("Enter the number of persons\n");
scanf("%d", &no);
for (i = 0; i < no; i++)
{
printf("\n Enter the name of person %d :" i + 1);
gets (stud[i].name);
printf("\n Enter the address of person %d :" i+1);
gets (stud[i].address);
printf("\n Enter the phone no. of person %d :"i+1);
scanf("%d", &stud[i].phn_no);
temp [i] = stud [i];
}
printf("\n Names before sorting \n");
for (i = 0; i < no; i++)
{
printf("%s\t%s\t%d\n", temp[i].name,
temp [i] .address, temp [i] . phn_no;
}
sort (no); /*function call */
printf ("Names after sorting \n");
for (i = 0; i < no; i++)
{
printf("%s\t%s \t %d \n", stud [i].name,
stud[i].address, stud [i].phn_no;
Void sort (int n). /*Function to sort the given names */
{
int i, j;
NAME temp;
for (i = 0; i < N - 1; i++)
{
for (j = i+1; j <n; j++) { if(stremp (stud[i].name, stud[j].name) >0)
{
temp = stud[i];
stud [i] = stud [j];
stud [j] = temp;
}
}
}
}

प्रश्न 4.
एक स्ट्रिंग को रीड करो तथा उसमें उपयोग वर्णमाला के अक्षरों की आवृत्ति (frequency) ज्ञात करने हेतु ‘सी’ भाषा का प्रोग्राम लिखिए।
उत्तर:

#include
#include
int main()
{
char string[100];
int c = 0, count [26] = {0};
printf ("Enter a string\n");
gets (string);
while (string[c]! = '\0')
{
if (string[c] > = 'a' && string[c] < = 'z')
count(string[c] - 'a' ]++;
C++;
}
for (c = 0; c < 26; C++)
{
if (count [c] ! = 0)
printf("%c occurs %d times in the entered string, \n" c + 'a', count [c]);
}
return 0;
}
RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

प्रश्न 5.
फलन के लिए संकेतक किस प्रकार घोषित होते हैं? उदाहरण सहित समझाइए।
उत्तर-
फलन के लिए संकेतक निम्नांकित प्रकार घोषित करते हैं
type (*pointer-name) (parameter);
उदाहरण

#include
#include
int sum (int x, int y)
{
return x + y;
}
int main ()
{
int (* Fp) (int, int);
Fp = sum;
int s = Fp (10, 15);
printf("Sum is %d", s);
getch();
return 0;
}

प्रश्न 6.
निम्नलिखित सदस्यों के लिए बिट् फील्ड्स दर्शाते हुए संरचना लिखिए।
(i) be male or female
(ii) have one of the eight different hobbies
(iii) be single, married, divorcee or widower
उत्तर-

struct info
{
char sex; /* m for male.
f for female */
char hobby : /* use first character of hobby name */
char status; /* m for married
s for single
d for divorcee
and w for widower* /
};
struct info f;
Then memory map of f is :
RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग image - 2

प्रश्न 7.
निरूपित आँकड़ा क्या होता है? 12 माह को हम निरूपित आँकड़े की तरह किस प्रकार लिखेंगे?
उत्तर-
निरूपित आँकड़े, साधारण डेटा टाइप से बने होते हैं। जैसे—एरे, संरचनाएँ (Structure)

void main()
{
char *st [12] = { "January", "February", "March", "April", "May", "June" , "July", "August", "Septemper", "October", "November", "December" };
char ch;
int i;
do
{
printf ("Enter the month number whose name you want to print");
scanf ("%d", &i);
printf("%s", *st [i]);
printf("want to check another month");
scanf("%c", &ch);
}
while (ch = = 'y');
getch ();
}
RBSE Solutions for Class 11 Computer Science Chapter 2 'सी' भाषा की प्रोग्रामिंग

RBSE Solutions for Class 11 Computer Science