Chapter 7 – Pointers NCERT Solutions for Class 12 Computer Science (C++)


NCERT Solutions for Class 12 Computer Science (C++) Chapter 7 – Pointers – Free PDF download

NCERT Solutions for Class 12 Computer Science

Chapter NamePointers
ChapterChapter 7
ClassClass 12
SubjectComputer Science (C++) NCERT Solutions
BoardCBSE
CategoriesCBSE NCERT Solutions


Very Short Answer Type Questions    [1 mark each]



Question 1:
Write the definition of a function FixPay (float Pay[ ], int N) in C+ + , which should modify each element of the array Pay having N elements, as per the following rules :

Existing Salary ValueRequired Modification in Value
If less than 1,00,000Add 25% in the existing value
If >=1,00,000 and <20,000Add 20% in the existing value
If >=2,00,000Add 15% in the existing value

Аnswer:

Void FixPay(float Pay[],int N) { for(int i=0;i<N;i++) { if(Pay[i]<100000) Pay[i]+= Pay[i]*0.25; else if(Pay[i]<200000) Pay[i]+= Pay[i]*0.20;  else Pay[i]+= Pay[i]*0.15 ;  } }

Question 2:
Write the definition of a member function INSERT() for a class QUEUE in C+ +, to remove a product from a dynamically allocated Queue of items considering the following code is already written as a part of the program.

Struct ITEM  { int INO; char INAME[20]; ITEM*Link; }; class QUEUE  { ITEM *R,*F; Public: QUEUE(){R=NULL; F=NULL;} void INSERT(); void DELETE(); ~QUEUE(); };

Аnswer:

Void QUEUE::INSER() { ITEM*newitem = new ITEM;  Cout<<"enter item number"; cin>>newitem → INO; Cout<<"Enter item name";   gets(newitem → INAME);  newitem → Link = NULL;  if (R==NULL) R=F=newitem; else {  R → Link=newitem;   R = newitem; }

Short Answer Type Questions-I



Question 1:
Write the output from the following C+ + program code :

#include<iostream.h> #include<ctype.h>  void strcon(char s[]) { for(int i=0,l=0;s[i]!="";i++,l++);  fortint j=0;j<l;j++) { if(isupper(s[j])) s[j]=tolower(s[j])+2;  else if( islower(s[j]))  s[j]=toupper(s[j])-2;  else s[j] ="@";  } } void main() { char *c="Romeo Joliet";  strcon(c); cout<<"Text="<<c<<endl;  c=c+3; cout<<"New Text="<<c<<endl;  c=c+5-2 ; cout<<"last Text= "<<c;  }

Аnswer:
Text = tMKCM@lMJGCR
New Text = KCM@1MJGCR
Last Text = 1MJGCR


Question 2:
Obtain the output of the following C+ + program as expected to appear on the screen after its execution.
Important Note :
All the desired header files are already included in the code, which are required to run the code.

void main() { char *Text="AJANTA"; int *P, Num[]={l,5,7,9} P=Num; cout <<*p<< Text <<endl; Text++; P++; cout<<*P<<Text<<endl; }

Аnswer:
1AJANTA
5JANTA


Question 3:
Obtain the output from the following C+ + program as expected to appear on the screen after its execution.
Important Note :
• Adi the desired header files are already included in the code, which are required to run the code.

void main() { char *String="SARGAM";  int *Ptr, a[]={1,5,7,9};  ptr=a; cout<<*ptr<<String<<endl; String++;  ptr+=3; cout<<*ptr<<String<<endl; }

Аnswer:
1 SARGAM
9ARGAM


Question 4:
Give the output of the following program segment: (Assuming all desired header file(s) are already included)

void main() { float *Ptr, Points[] = {20,50,30,40,10}; Ptr = points;  cout<<*Ptr<<endl; Ptr+=2; Points[2]+=2.5;  cout<<*Ptr<<endl; Ptr++; (*Ptr)+=2.5;  cout<<Points[3]<<endl; }

Аnswer:
20.00 32.5
42.50


Question 5:
Find the output of the following code :
Important Note :
All the header files are already included in the code, which are required to run the code.

void main() { char *String="SHAKTI"; int*Point,Value[]={10,15,70,19}; Point=Value; cout<<*Point<<String<<endl; String++; Point++; cout<<*Point<<String<<endl; }

Аnswer:
10SHAKTI
15HAKTI


Question 6:
Write the output of the following C+ + program code :
Note : Assume all required header files are already being included in the program.

void change(int*s) { for(int i=0;i<4;i++) { if(*s<40) { if(*s%2==0) *s=*s+10;  else *s=*s+ll;  } else  { if(*s%2==0) *S=*S-10;  else *s=*s-ll; } cout<<*s<<" "; s++; } } void main() { int score[]={25,60,35,53 };  change(score); }

Аnswer:
36 50 46 42


Short Answer Type Question-II



Question 1:
Find the output of the following program :

#include<iostream.h> void in(int x,int y,int &z) { x+=y;  y--; z*=(x-y); } void out(int z,int y,int &x) { x*=y; y++; z/=(x+y); } void main() { int a=20, b=30, c=10; out(a,c,b); cout<<a<<"#"<<b<<"#"<<c<<"#"<<endl;  in(b,c, a) ; cout<<a<<"®"<<b<<"@"<<c<<"@"<<endl;  out(a,b,c); cout<<a<<"$"<<b<<"$"<<c<<"$"<<endl; }

Аnswer:
20#300#10#
620@300@10@
620$300$3000$


Long Answer Type Questions



Question 1:
Find the output of the following code:

#include<iostream.h>  void main() { int *Striker; int Track[]={10,25,30,55};  Striker=Track;  Track[1]+=30; cout<<"Striker"<<*Striker<<endl;  *Striker=-10; Striker++; cout<<"Next@"<<*Striker<<endl;  Striker+=2; cout<<"Last@"<<*Striker<<endl; cout<<"Rest To"<<*Track[0]<<endl; }

Аnswer:
Striker 10
Next@55
Last@55
Rest To 0


Question 2:
Find the output of the following code :

#include<iostream.h>  void main() {  int *Queen; Moves[]={ll,22,33,44}; Queen=Moves; Moves[2]+=22; cout<<"Queen@"<<*Queen<<endl;  *Queen-=ll; Queen+=2; cout<<”Now@"<<*Queen<<endl;  Queen++; cout<<"Finally@"<<*Queen<<endl; cout<<"NewOrigin@"<<*Moves[0]<<endl;  }

Аnswer:
Queen@11
Now@55
Finally@44
NewOrigin@0