Ans 1.1 A

Ans 2.1 F

Ans 3.1 I

Ans 4.1 C

Ans 1.2 B

Ans 2.2 F

Ans 3.2 H

Ans 4.2 G

Ans 1.3 C

Ans 2.3 F

Ans 3.3 D

Ans 4.3 A

Ans 1.4 A

Ans 2.4 T

Ans 3.4 L

Ans 4.4 K

Ans 1.5 B

Ans 2.5 T

Ans 3.5 G

Ans 4.5 H

Ans 1.6 B

Ans 2.6 T

Ans 3.6 B

Ans 4.6 J

Ans 1.7 D

Ans 2.7 F

Ans 3.7 A

Ans 4.7 B

Ans 1.8 A

Ans 2.8 F

Ans 3.8 F

Ans 4.8 L

Ans 1.9 A

Ans 2.9 F

Ans 3.9 E

Ans 4.9 D

Ans 1.10 A

Ans 2.10 T

Ans 3.10 M

Ans 4.10 F

Ans 5(a).

#include<stdio.h>

Int main()

{

Float x;

Int y;

Printf(“enter the values of x and y\n”);

Scanf(“%f%d”,&x,&y);

Printf(“%fto the power %d value is :%f”,x,y,fnpow(x,y));

Return 0;

Float fnpow(float res,int pow)

{

Int I;

Float fnpow=1.0;

For(i=0;i<pow;i++)

Funpow=fumpow*res;

Return funpow;

}

Ans 5(b).

Struct  maxmin

{

int max;

int min;

};

Structmaxmin fnmat(int matrix[][],int m,int n)

{

Structmaxmin manmin;

Int c,d;

Maxmin.max=maxmin.min=matrix[0][0];

For(c=0;c<m;c++)

{

For(d=0;d<n;d++)

{

If(matrix[c][d]>maximum.max)

Maxmin.max=matrix[c][d];

If(matrix[c][d]<maxmin.min)

Maxmin.min=matrix[c][d];

}

}

Return maxmin;

};

Ans 5(c).

Output:

A

K=42




Ans 6(a).

#include<stdio.h>

#include<stdlib.h>

Main(int argc,char *argv[])

{

FILE *fstring1, *fstring2, *ftemp;

Char ch,file3[20];

Printf(entrer name to store merged file\n”);

Gets(file3);

Fstring1=fopen(argv[1],”r”);

Fstring2=fopen(argv[2],”r”);

If(fstring1==NULL||fstring2==NULL)

{

Perror(“error has occurred”);

Printf(“press any key to exit…\n”);

Exit(EXIT_FAILURE);

}

Ftemp=fopen(file3,”w”);

If(temp==null)

{

Perror(“error has occures”);

Printf(“press any key to exit…\n”);

Exit(EXIT_FAILURE);

}

While((ch=ggetc(fstrinh1))!=EOF)

Fputc(ch,ftemp);

While((ch=fgetc(fstring))!=Eof)

Fputc(ch,ftemp);

Printf(%sfile and %s file merged into %s file successfully.\n”,argv[1],argv[2],file3);

Fclose(fstring);

Fclose(fstring1);

Fclose(fstring2);

Return 0;

}

Ans 6(b).

Break : Loop के Iteration के समय Statement का दोहरान तब तक होता रहता है जब तक कि Loop की Condition सत् होती है। लेकिन कई बार हमारे सामने ऐसी परिस्थिति जाती है कि किसी खास काम के लिए हमें Loop के कुछ Statements के Execution को छोड कर  Loop के बीच में से ही बाहर आना होता है, उस समय हम break Statement का प्रयोग करते हैं।

#include<stdio.h>

main()

{

        int a;

        clrscr();

 

        for(a=1;a<=20;a++)

        {

               if( a = = 10 )

                       break;

               printf(“\t %d”, a);

        }

        printf(“\n”);

        for(a=1;a<=10;a++)

        {

               if(a == 10)

                       continue;

               printf(“\t %d”, a);

        }

        getch();

}

Continue : इस Statement का प्रयोग तब किया जाता है जब हम किसी खास परिस्थिति में Loop के किसी दोहरान में Block के Statements को Execute करना नहीं चाहते है।

ध्यान दें कि जहां break का प्रयोग Program Control को Loop से ही बाहर निकाल देता वहां continue का प्रयोग हमें Loop से बाहर नहीं निकालता बल्कि केवल उस Condition के सत् होने पर मात्र हमें Loop के उस Iteration से बाहर निकालता है। नीचे break  continue Statement के प्रयोग से प्रोग्राम बनाया गया है जिससे इन्हे आसानी से समझा जा सकता है

 

Ans 6(c).

Name of the appropriate data type used for variable session is:

Enum session{morning,afternoon,evening};

Name of the appropriate data type used for variable info is:

Struct employees

{

Char empmane[50];

Char empid[20];

}emp[30];

Ans 7(a).

Address of location in row major system is calculated using the following formula:

Address of a[i][j]=b+w*[n*(i-lr)+(j-lc)]

Where ,a=2d array

I=row subscript of element whoes address is to be found=4

J=column sub script of element whoes address is to be found=5

B=base add. Array=4000

W=storage size of one element stored in the array(in byte) given=4

M=number of row of the given matrix

N= number of column of the given matrix

Lr=lower limit of row/start row index of matrix,if not given assume ‘0’=0

Lc=lower limit of column/start row index of matrix,if not given assume ‘0’=0

Now,apply above values into the formula:

a[i][j] = b+w*[n*(i-lr)+(j-lc)]

a[4][5] =4000+4[10*(4-0)+(5-0)]

4180

Address of a[4][5]=4180

Ans 7(b).

Int x=fsk(fp,R*B,SEEK_CUR)

Ans 7(c).

Difference between Structure and Union: Union Structure को Define करने का तरीका एक जैसा ही है। जिस तरह Structure को define करने के लिए struct key word का प्रयोग करते हैं, उसी प्रकार Union को Define करने के लिए union key word का प्रयोग किया जाता है। जो भी काम एक Structure के साथ किया जाता है, वे सभी काम union के साथ किये जा सकते हैं। जैसे union प्रकार का Variable Declare करना, उस Variable को मान प्रदान करना, Union के Members को access करना आदि। लेकिन इन दोनों के काम करने के तरीके में अन्तर है।

एक Structure के सभी Members की Memory में एक अलग Memory Location होती है। यानी एक Structure के सभी Members Memory में space reserve करते हैं। लेकिन एक Union में Declare किये गए सभी Variable Memory के एक ही Memory Location पर Store होते हैं। एक Union में हम विभिन्न प्रकार के Members को रख सकते हैं, लेकिन एक समय में केवल एक ही प्रकार का मान Union के अंदर किसी Member में Store रह सकता है

 

Example structure declaration

Struct s_tag

{

Int ival;

Float fval;

Char *s;

}s;

Example union declaration

Union u_tag

{

Int ival;

Float fval;

Char *cptr;

}u;

 

Ans  8(a).

// C program to Implement a stack

//using singly linked list

#include

#include

  

// Declare linked list node

  

struct Node {

    int data;

    struct Node* link;

};

struct Node* top;

  

// Utility function to add an element data in the stack

 // insert at the beginning

void push(int data)

{

    // create new node temp and allocate memory

    struct Node* temp;

    temp = (struct Node*)malloc(sizeof(struct Node));

  

    // check if stack (heap) is full. Then inserting an element would

    // lead to stack overflow

    if (!temp) {

        printf(“\nHeap Overflow”);

        exit(1);

    }

  

    // initialize data into temp data field

    temp->data = data;

  

    // put top pointer reference into temp link

    temp->link = top;

  

    // make temp as top of Stack

    top = temp;

}

  

// Utility function to check if the stack is empty or not

int isEmpty()

{

    return top == NULL;

}

  

// Utility function to return top element in a stack

int peek()

{

    // check for empty stack

    if (!isEmpty(top))

        return top->data;

    else

        exit(EXIT_FAILURE);

}

  

// Utility function to pop top element from the stack

  

void pop()

{

    struct Node* temp;

  

    // check for stack underflow

    if (top == NULL) {

        printf(“\nStack Underflow”);

        exit(1);

    }

    else {

        // top assign into temp

        temp = top;

  

        // assign second node to top

        top = top->link;

  

        // destroy connection between first and second

        temp->link = NULL;

  

        // release memory of top node

        free(temp);

    }

}

  

void display() // remove at the beginning

{

    struct Node* temp;

  

    // check for stack underflow

    if (top == NULL) {

        printf(“\nStack Underflow”);

        exit(1);

    }

    else {

        temp = top;

        while (temp != NULL) {

  

            // print node data

            printf(“%d->”, temp->data);

  

            // assign temp link to temp

            temp = temp->link;

        }

    }

}

  

// main function

  

int main(void)

{

    // push the elements of stack

    push(11);

    push(22);

    push(33);

    push(44);

  

    // display stack elements

    display();

  

    // print top elementof stack

    printf(“\nTop element is %d\n”, peek());

  

    // delete top elements of stack

    pop();

    pop();

  

    // display stack elements

    display();

  

    // print top elementof stack

    printf(“\nTop element is %d\n”, peek());

    return 0;

}

Ans 8(b).

Macro Substitution Directive: ये एक ऐसा तरीका होता है जिसमें किसी Program का कोई Identifier किसी Predefined String से Replace होता है। Processor ये काम किसी #define Statement के Under में करता है। इस तरह के Statements को Macro Definition कहा जाता है। जैसे: जब हम हमारे Program में इस प्रकार से किसी Macro को Define करते हैं तो Program में जहां भी Macro का नाम होता है Program Compile होने से पहले वहां पर Define की गई String Replace हो जाती है। इसे समझने के लिए निम्न Program देखिए

// Program  

#include<stdio.h>

#include <conio.h>

 #define START main()  

{        #define PI       3.14        

START        float Area, radius;       

printf(“Enter Radius”);       

scanf(“%f”, &radius);        

Area = PI * radius * radius;        

printf(“Area of Radius is %f “, Area);       

getch();  

}

Ans 9(a)(i)


टेक्स्ट मोड में, डिस्क पर लिखे जाने से पहले एक नया वर्ण कैरेक्टर रिटर्नलाइनफीड संयोजन में बदल जाता है। इसी तरह, डिस्क पर गाड़ी के रिटर्नलाइनफीड संयोजन को एक सी प्रोग्राम द्वारा फाइल पढ़ने पर वापस एक नई रेखा में बदल दिया जाता है। हालाँकि, यदि कोई फ़ाइल बाइनरी मोड में खोली जाती है, तो टेक्स्ट मोड के विपरीत, ये रूपांतरण नहीं होंगे।

 पाठ और बाइनरी मोड के बीच दूसरा अंतर उस तरह से है, जैसे अंतफ़ाइल का पता लगाया जाता है। पाठ मोड में, एक विशेष वर्ण, जिसका ASCII मान 26 है, फ़ाइल के अंतिम चिह्न को चिह्नित करने के लिए फ़ाइल में अंतिम वर्ण के बाद डाला जाता है। यदि फ़ाइल में किसी भी बिंदु पर इस वर्ण का पता लगाया जाता है, तो रीड फ़ंक्शन प्रोग्राम में EOF सिग्नल लौटाएगा। जैसा कि इसके विपरीत, फ़ाइल के अंत को चिह्नित करने के लिए बाइनरी मोड फ़ाइलों में मौजूद ऐसा कोई विशेष वर्ण नहीं है। बाइनरी मोड फाइलें फ़ाइल की निर्देशिका प्रविष्टि में मौजूद चरित्र की संख्या से फ़ाइल के अंत का ट्रैक रखती हैं।

Ans 9(a)(ii)


स्टैटिक स्टोरेज क्लास का उपयोग एक पहचानकर्ता की घोषणा करने के लिए किया जाता है, जो एक फ़ंक्शन या फ़ाइल के लिए एक स्थानीय चर है और यह मौजूद है और नियंत्रण मूल्य पास होने के बाद इसका मान रखता है जहां से इसे घोषित किया गया था। इस संग्रहण वर्ग में एक अवधि है जो स्थायी है। इस वर्ग का घोषित एक चर फ़ंक्शन के एक कॉल से दूसरे तक इसके मूल्य को बनाए रखता है। दायरा स्थानीय है। एक चर को केवल उस फ़ंक्शन द्वारा जाना जाता है जिसे उसके भीतर घोषित किया जाता है या यदि किसी फ़ाइल में विश्व स्तर पर घोषित किया जाता है, तो यह केवल उस फ़ाइल के भीतर फ़ंक्शन द्वारा जाना या देखा जाता है। यह संग्रहण वर्ग इस बात की गारंटी देता है कि चर की घोषणा भी चर को शून्य या सभी बिट्स से आरंभ करती है।

एक्सटर्नल स्टोरेज क्लास का इस्तेमाल एक वैश्विक वैरिएबल को घोषित करने के लिए किया जाता है, जो एक फाइल में फंक्शन्स के लिए जाना जाएगा और एक प्रोग्राम में सभी फंक्शन्स के लिए सक्षम होने के लिए जाना जाएगा। इस संग्रहण वर्ग में एक अवधि है जो स्थायी है। इस वर्ग का कोई भी वैरिएबल किसी अन्य असाइनमेंट द्वारा परिवर्तित किए जाने तक इसके मूल्य को बनाए रखता है। दायरा वैश्विक है। एक चर को एक कार्यक्रम के भीतर सभी कार्यों से जाना या देखा जा सकता है

Ans9(b).

S[]=”you create your own reality”;

C=’u’;

Then final output after calling above function is like: you create your own reality

Means given function removes all occurrences of character c from array s.

Ans 9(c).

  • Int *p(char *a[]):this statement shows it is a function named ‘p’, it takes an array of char* argument and it returns a pointer to an int.
  • Int *p(char *a,char *b): this statement shows it is a function named ‘p’, it takes two pointer arguments of type character and it returns a pointer to an int.
  • Int (*p)(char *a)[](++):means p is a 10 element array of pointers to a function,each function returns an integer quantity.

 




Translate »
error: not allow