' Computer Science Data Structure Arrays Important Questions with Answer for CBSE Class XII Board Examination 2011 By Deepa
Friday 29th March 2024
REGISTRATION
Online Fashion Store

CBSE Important Questions

CBSE Guess > Papers > Important Questions > Class XII > 2011 > Computer Science > Computer Science By Deepa

CBSE CLASS XII

Previous Index Next

Arrays (Questions with Answer)

Page 1 of 3

  1. Define a function shift() to shift all odd elements towards left and even to right without changing order of numbers.
    Example: If input: 1,5,7,8,9,2,10
    Output: 1,5,7,9,8,2,10.

Ans:

    void shift(int a[10],int n)
    {
    int b[10],i,k=0;
    for(i=0;i<n;i++)
    {
    if(a[i]%2= =1)
    {
    b[k]=a[i];
    k++;
    }
    }
    for(i=0;i<n;i++)
    { if(a[i]%2= =0)
    { b[k]=a[i];
    k++;
    }
    }
    for(i=0;i<n;i++)
    cout<<b[i]<<" ";
    }

  1. Given two arrays A and B. Array ‘A’ contains all the elements of ‘B’ but one more element extra. Write a c++ function which accepts array A and B and its size as arguments/ parameters and find out the extra element in Array A. (Restriction: array elements are not in order)
    Example : - If Array A is {14, 21, 5, 19, 8, 4, 23, 11} and Array B is {23, 8, 19, 4, 14, 11, 5 } Then output will be 21 (extra element in Array A)

Ans:

    void extra(int a[10],int m,int b[10],int n)
    {
    int i,j,flag;
    for(i=0;i<m;i++)
    { flag=0;
    for(j=0;j<n;j++)
    if(a[i]==b[j])
    { flag=1;
    break;
    }

    if(flag==0)
    cout<<a[i]<<" is the extra element\n";
    }
    }

  1. Write C++ function to Arrange(int [],int) to arrange all the negative and positive numbers from left to right.
    Example : - If an array of 10 elements initially contains { 4,5,6,-7,8,-2,-10,1,13,-20} . Then the function rearrange them in following manner { -20,-10,-7,-2 1,4,5,6,8,13}

Ans:

    void arrange(int a[10],int n)
    {
    int i,j,temp;
    for(i=0;i<n;i++)
    { for(j=0;j<n-1;j++)
    if(a[j]>a[j+1])
    { temp=a[j];
    a[j]=a[j+1];
    a[j+1]=temp;
    }
    }
    for(i=0;i<n;i++)
    cout<<a[i]<<" ";
    }

  1. Write a user defined function in C++ to find and display the row sums of a two dimensional array.

Ans:

    void rowsum(int a[10][10],int m,int n)
    {
    int i,j,rsum;
    for(i=0;i<m;i++)
    { rsum=0;
    for(j=0;j<n;j++)
    rsum+=a[i][j];
    cout<<"\nSum of row "<<i+1<<" is -"<<rsum;
    }
    }

  1. Write a user defined function in C++ to find and display the column sums of a two dimensional array.

Ans:

    void columnsum(int a[10][10],int m,int n)
    {
    int i,j,csum;
    for(i=0;i<n;i++)
    { csum=0;
    for(j=0;j<m;j++)
    csum+=a[j][i];
    cout<<"\nSum of column "<<i+1<<" is ->"<<csum;
    }
    }

  1. Write a function in C++ to print the product of each row of a two dimensional array passed as the arguments of the function

Ans:

    void rowproduct(int a[10][10],int m,int n)
    {
    int i,j,rp;
    for(i=0;i<m;i++)
    { rp=1;
    for(j=0;j<n;j++)
    rp*=a[j][i];
    cout<<"\nProduct of row "<<i+1<<" is ->"<<rp;
    }
    }

  1. Write a function in C++ which accepts a 2D array of integers and its size as arguments and displays the elements which lie on diagonals. [Assuming the 2D Array to be a square matrix with odd dimension i.e. 3×3, 5×5, 7×7 etc.] Example, if the array content is

    5 4 3
    6 7 8
    1 2 9

Output through the function should be: Diagonal 1 : 5 7 9 Diagonal 2 : 3 7 1

Ans:

    void diagonal(int a[10][10],int m,int n)
    {
    int i,j;
    cout<<"\nDiagonal 1:";
    for(i=0;i<m;i++)
    { for(j=0;j<n;j++)
    if(i==j)
    cout<<a[i][j]<<" ";
    }
    cout<<"\n\nDiagonal 2:";
    for(i=0;i<m;i++)
    { for(j=0;j<n;j++)
    if(i+j==n-1)
    cout<<a[i][j]<<" ";}
    }

  1. Write a user defined function in C++ which accepts a squared integer matrix with odd dimensions (3*3, 5*5 …) & display the square of the elements which lie on both diagonals. For ex. :
  2. 2 5 7
    3 7 2
    5 6 9

The output should be :
Diagonal one : 4, 49, 81
Diagonal two : 49, 49, 25

Ans:

void diagonalsquare(int a[10][10],int m,int n)
{
int i,j;
cout<<"\nDiagonal one :";
for(i=0;i<m;i++)
{ for(j=0;j<n;j++)
if(i==j)
cout<<a[i][j]*a[i][j]<<",";}
cout<<"\n\nDiagonal two:";
for(i=0;i<m;i++)
{ for(j=0;j<n;j++)
if(i+j==n-1)
cout<<a[i][j]*a[i][j]<<",";
}
}

  1. Write a user defined function in C++ which accepts a squared integer matrix with odd dimensions (3*3, 5*5..) & display the sum of the middle row & middle column elements. For ex. :

     

    2 5 7
    3 7 2
    5 6 9

The output should be :
Sum of middle row = 12
Sum of middle column = 18

Ans:

void middlesum(int a[10][10],int m,int n)
{
int i,j,mrsum=0,mcsum=0;
for(i=0;i<n;i++)
mrsum+=a[m/2][i];
cout<<"\nSum of middle row="<<mrsum; for(i=0;i<m;i++)
mcsum+=a[i][n/2];
cout<<"\nSum of middle column="<<mcsum;
}

  1. Write a user-defined function named Lower_half() which takes 2D array A, with size N rows and N columns as argument and prints the lower half of the array.
    Eg. Input

    2 3 1 5 0
    7 1 5 3 1
    2 5 7 8 1
    0 1 5 0 1
    3 4 9 1 5

the output will be

    2
    7 1
    2 5 7
    0 1 5 0
    3 4 9 1 5

Ans:

void lower_half(int a[10][10],int n)
{
int i,j;
for(i=0;i<n;i++)
{ cout<<endl;
for(j=0;j<n;j++)
if(i>=j)
cout<<a[i][j]<<" ";
}
}

 

Previous Index Next

Submitted By Deepa
Email Id : [email protected]
About Author: Computer Teacher From Sunrise English Pvt. School