Cs 201 Solved Midterm Papers 1

Download as pdf or txt
Download as pdf or txt
You are on page 1of 26

Virtual Study Solutions

www.virtualstudysolutions.blogspot.com

CS201-introduction to programing
Latest Solved subjective from Midterm Papers May 10,2011

Lectures 1-22 Mc100401285 [email protected] Moaaz Siddiq Latest subjectives

MIDTERM EXAMINATION
Spring 2010
Question No: 17 ( Marks: 2 )
What is the difference between switch statement and if statement.
Answer:
1.if statement is used when we have to check two conditions while switch is a multi conditional control statement

2. SWITCH statement can be executed with all cases if the “break” statement is not used whereas IF statement has to be true
to be executed further.

Question No: 18 ( Marks: 2 )


Why we close a file after use?
Answer:
To save our data stored on file. Also this process makes our program fast and reliable.
OR
You have finished with it. This is particularly important if you are writing to the file. The operating system does not switch on the
disk drive to write just a single character to the disk, rather it waits until it has a load to write and then writes the lots in one go.
http://www2.sis.pitt.edu/~ir/KS/Data/RMiles/c12.html

Question No: 19 ( Marks: 2 )


A two-dimensional array has 3 rows and 4 columns. Write down the syntax to initialize first element of all
three rows of two-dimensional array with value 2.
Answer:
int matrix[0][0]=2
int matrix[1][0]=2
int matrix[2][0]=2

Question No: 20 ( Marks: 3 )


Identify the errors in the following code segment and give the reason of errors.
main(){
int x = 10
const int *ptr = &x ;
*ptr = 5 ;
}
Answer:
Int x=10….No ending semicolon.
*ptr=5... Declaring a pointer to constant integer. You cannot use this pointer to change the value being
pointed to.

Question No: 21 ( Marks: 3 )


Can you use an assignment operator to assign the value of one C-string to another?

Answer:
Yes we can assign the one value of C-string to another using assignment operator. We can
assign the value of one string to another string through this method.
A[0]=B[0]
A[1]=B[2]
A[3]=B[3]
And we can assign the whole string to another C string using Assignment operator by using loops.

Question No: 22 ( Marks: 5 )


Why binary search algorithm is more efficient than the linear search algorithm?
Answer: (page118)
Binary search algorithm is more efficient than liner algorithm because the arrays are sorted in asending or
desending order and we use “devide and conqrer” technique. In binary search each iteration reduces the
search by the factor of two but in the linear we have the same number of searches as we have the number of
elements.e.g,if we have array of 1000 elements the linear search will take 1000 iterations however binary
search will take max 10.

Question No: 23 ( Marks: 5 )


Write down the output of the code given below :
Hint:
Size of char is 1 byte
Size of int is 2 byte
Size of float is 4 byte

#include <iostream.h>

union mytypes_t {
char c;
int i;
float f;
} mytypes;

int main(){

mytypes.c = 'H';
mytypes.i = 15;

cout << sizeof(mytypes)<<endl;


mytypes.i = 15;
mytypes.c = 'H';

cout << sizeof(mytypes)<<endl;

system("PAUSE");
return 0;
}

Question No: 16 ( Marks: 1 ) - Please choose one


In Program commenting the code liberally is
Answer: (page 06)
It need to be self-contained and understandable. Comments should be placed liberally. The comments
should explain the logic, not the mechanics. Try to avoid fancy programming.

Question No: 17 ( Marks: 1 )


Which header file must be included while handling files?
Answer: (page 199)
Include <fstream.h>

Question No: 18 ( Marks: 1 )


What is meant by C++ statement: const int *ptr = &x;
Answer:
ptr is a pointer to data of type const int type. And to assign the address of x to pointer ptr

Question No: 19 ( Marks: 2 )


What is a truth Table?
Answer: (page 562)
We know the concept of truth table. The truth tables are very important. These are still a tool available for
analyzing logical expressions. We will read logic design in future, which is actually to do with chips and
gate. We find it difficult to evaluate a complicated logical expression. Sometimes the logic becomes
extremely complicated so that even writing it as a simple syntax statement in any language. These are used to
make a big circuit with the use of minimum chips. These minimization techniques deal with Boolean algebra i.e.
logic.

Question No: 20 ( Marks: 3 )


(1) An array day is declared as: int day[] = {1, 2, 3, 4, 5, 6, 7};
How many elements does array 'day' has?
Answer:
7 elements
(2) If the declaration is changed as: int day[7] = {1, 2, 3, 4, 5, 6, 7};
How many elements does array 'day' has?
Answer:
7 elements

Question No: 21 ( Marks: 5 )


What are similarities and differences between Structures and Unions?
Answer: (page 242)
In structures, we have different data members and all of these have their own memory space. In union, the
memory location is same while the first data member is one name for that memory location. However, the
2nd data member is another name for the same location and so on. Consider the above union (i.e.
intOrChar) that contains an integer and a character as data members. What will be the size of this union?
The answer is the very simple. The union will be allocated the memory equal to that of the largest size data
member. If the int occupies four bytes on our system and char occupies one byte, the union intOrChar will
occupy four bytes

Question: 1-difference in pointer and veriable?


Question: 2-differenc in tellg() and tellp()
Answer: 215
tellg () gives us the current get position of the file pointer, tellp () function is used to determine the next position to write a character

Question: 3-why we close a file after use? repeat

Question: call by value and call by reference?


Answer: 84-266
There is another way to call a function in which the function can change the values of variables that are passed as arguments, of
calling program. Such function call is known as call by reference.
Call by value means that when we call a function and pass some parameter to it, the calling function gets the
copy of the value and the original value remains unchanged.

Question: 1. give one use of pointer


Answer: 150
The one use of pointer is to interchange two values that means it is used to swapped the values.

Question: 2. bubble sort


Answer: 149
Bubble sorting is a technique, in which we put value of one variable in a temporary location to
preserve it and assign the value of second variable to the first. Then the temporary value is
assigned to the second variable

3. what happened when we increment pointer


The effect of the increment operator ++ on a pointer object is to have the new address to which it
points be the starting location of the object immediately after the object to which it previously
pointed.
http://www.adiwebs.com/what-happens-if-a-pointer-object-is-incremented/

Question: 4. basic steps for file handling


Answer: 199
The basic steps of file handling are:
Open the file
Read and write
Close the file

Question: 5. which function is used in read/write while handling files


Answer: 199
ifstream inFile; // object for reading from a file
ofstream outFile; // object for writing to a file

Question: What operator do you use to assign a pointer the address of another variable or constant?
(2marks)

Question: Identify each of the following function as string conversion function or string manipulating
function; double atof (const char *nptr)
Answer: page 191
Converts the string nPtr to double.

char *strcpy (char *s1,const char *s2)


Answer: page 192
Copies string s2 into character array s1. The value of s1 is returned.

Question: What happens when we increment a pointer? (3 marks)


repeat
Question: Can you use an assignment operator to assign the value of one C-string to another?(3
marks)
Repeat

Question: What is the purpose and syntax of the const keyword? (5 marks)
Answer:
Through "const", if we have to change the size of the array, we only have to change the value of arraySize where it is declared.
Syntax of const is
const variable-name [ = value];

Question: What will be the output of the following;


#include <iostream.h>
using name space std:
union Num
{
int Value I;
float Value F;
double ValueD;
char Value C;
};
Void main ()
{
// Optional unionkeyword
// Value I = 100
NumTestValue = {100};
cout << \ nInteger = “<< TestVal.ValueI<<endl;
TestVal.Value F = 2.123;
cout << “Float=” << TestVal.ValueF<<endl;
cout<<”Uninitialzed double = “<<TestVal.Val D<< endl;
cout<<”Some rubbish???”<<endl;
TestVal.Value C = ‘U’;
cout<<”character = ‘<< TestVal.Value<<endl;
}

Question: Write down the general syntax of switch statement. 2 Marks


Answer: repeat
Question: Why we close a file after use? 2 Marks
Answer: repeat

Question: When a pointer is incremented then how many bytes will it move to change its address? 2 Marks
Answer: page 160
If an integer occupies four bytes in the memory, then the yptr++; will increment its value by four. when we increment the yptr, it
points to the next integer in the memory

Q4: If there are 2n element in an array then what would be the number of iterations required to
search a number using binary and linear search? 3 Marks
Answer: page 160
If an array has elements 2n, then the maximum number of iterations required by binary search will be n

Q5: write down the functions definition if we want to pass the argument to a function by reference
without changing the values stored at address. 5 Marks

Q6: What will be the output of the following code segment 5 Marks
, int x= 6;
int y;
x = x << 1;
y = x >> 1;
cout << “x = ” << x << “\n”;
cout << “y = ” << y;

Answer:
x=12
y=6
MIDTERM EXAMINATION 2009
Question No: 17 ( Marks: 1 )
To Which category of the software “Compiler and Interpreter” belongs?

Answer: (page 11)


The compilers and interpreters also belong to the System Software category.

Question No: 18 ( Marks: 1 )


What is the result of the expression x = 2 + 3 * 4 – 4 / 2
12
first multiplies 3*4 = 12 then Division 4/2 = 2
2+12-2 = 12

Question No: 19 ( Marks: 2 )


Write a declaration statement for an array of 10 elements of type float. Include an initialization statement of
the first four elements to 1.0, 2.0, 3.0 and 4.0.
Answer:
float tmp [10] = {1.0,2.0,3.0,4.0};

Question No: 20 ( Marks: 3 )


Write down the output of the following code?
int array[7], sum = 0;
for(int i=0;i<7;i++)
{
array[i] = i;
sum+= array[i];
}
cout<< “ Sum = “ <<sum;
Answer:21
Loop will run times starts from zero and add values from 1 to 6 which is equal to 21

Question: What will be the output of the following segment of C++ code?
int A[5] = {1 , 2, 3, 4};
int i;
for (i=0; i<5; i++)
{
A[i] = 2*A[i];
cout << A[i] << " ";
}
Answer:
24680
Loops will run 5 times as its starting from zero. It will multiply the value of each item in array as last time
is not initialized so it will multiply it with zero to give zero as output
Question No: 22 ( Marks: 10 )
Write a C++ program that will determine if a departmental store customer has exceeded the credit
limit on a charge account.
Program should input the following facts in five variables
1. Account number
2. Balance at the beginning of month (Beginning balance)
3. total of all items charged by customer this month (charges)
4. total of all credits (credits)
5. allowed credit limit
Calculate the new balance
New balance = Beginning balance + charges – credits
Determine if new balance exceeds the allowed credit limit. For those customers whose credit limit is
exceeded. The program should display the message “Credit Limit exceeded.”

Question No: 17 ( Marks: 1 )


Which programming tool is helpful in tracing the logical errors?
Answer: (page 13)
Debugger is used to debug the program i.e. to correct the logical errors.

Question No: 18 ( Marks: 1 )


Give the syntax of opening file ‘myFile.txt’ with ‘app’ mode using ofstream variable ‘out’.
Answer: (page 203)
out.open(“myfile.txt” , ios::app);

Question No: 19 ( Marks: 2 )


What is the difference between switch statement and if statement.
Answer:
The if statement is used to select among two alternatives. It uses a boolean expression to decide
which alternative should be executed. The switch statement is used to select among multiple
alternatives. It uses an int expression to determine which alternative should be executed.

Question No: 20 ( Marks: 3 )


Identify the errors in the following code segment and give the reason of errors.
main(){
int x = 10
const int *ptr = &x ;
*ptr = 5 ;
}
Answer:
*ptr = 5;
declaring a pointer to a constant Integer. You cannot use this pointer to change the value being
pointed to:
Question No: 21 ( Marks: 5 )
If int array[10]; is an integer array then write the statements which will store values at Fifth and
Ninth location of this array,

Answer:
arrary[4] = 200;
arrary[8] = 300;

Question No: 22 ( Marks: 10 )


Write a function BatsmanAvg which calculate the average of a player (Batsman), Call this function
in main program (Function). Take the input of Total Runs made and Total number of matches
played from the user in main function
#include <iostream.h> // allows program to output data to the screen
// function main begins program execution
int BatsmanAvg(int TotalRuns, int TotalMatches) ;
main()
{
int stopit;
int TotalRuns, TotalMatchesPlayed =0;
cout << "Please Entere the total Runs made : " ;
cin>> TotalRuns ;
cout << "Please Entere the total match played : " ;
cin>> TotalMatchesPlayed ;
cout << "\n Avg Runs = " << BatsmanAvg(TotalRuns,TotalMatchesPlayed);
cin>> stopit; //pause screen to show output
}
int BatsmanAvg(int TotalRuns, int TotalMatches)
{
return TotalRuns/TotalMatches;
}

Question No: 17 ( Marks: 1 )__________


What is the output of the following program?
#include iostream.h
main ( ) {
int RollNo;
int rollno;
RollNo = 5;
rollno = 8;
cout << “Roll No is ” << rollno; }

Answer:
Program should not compile due to missing <> from following statement
#include iostream.h
if we ignore this then output should be
Roll No is 8

Question No: 18 ( Marks: 1 )_____________________


Why we include iostream.h in our programs?
Answer: page 15
iostream.h tells the C compiler to include the contents of a file, This is the name of the library
definition file for all Input Output Streams.

Question No: 19 ( Marks: 2 )


Find out error in the code given below:
if ( num % 2 = 0 )
cout << "The number is even" << endl;

Answer:
if ( num % 2 = 0 ) There should be extra = sign following is right statement
if ( num % 2 = =0 )

Question No: 20 ( Marks: 3 )


How learning to design programs is like learning to play soccer?
Answer: (page 6)
“Learning to design programs is like learning to play soccer. A player must learn to trap a ball, to dribble
with a ball, to pass, and to shoot a ball. Once the player knows those basic skills, the next goals are to learn
to play a position, to play certain strategies, to choose among feasible strategies, and, on occasion, to create
variations of a strategy because none fits. “

Question No: 21 ( Marks: 5 )


Write the procedure of data insertion in middle of the files by Merge Method practiced in older systems?
Answer: (page 218)
· Opened the data file and a new empty file.
· Started reading the data file from beginning of it.
· Kept on copying the read data into the new file until the location we want to insert data into is reached.
· Inserted (appended) new data in the new file.
· Skipped or jumped the data in the data file that is to be overwritten or replaced.
· Copied (appended) the remaining part of the file at the end of the new file

Question No: 22 ( Marks: 10 )


Write a recursive function that takes three arguments (an integer array, starting subscript ‘s’ and
ending subscript ‘e’ ).
In first recursive call, the function should display the array from subscript ‘s’ (s = 0) to ‘e’ (e =
size of array). In each successive call, the function should print the array from index s+1 to e. T
function should stop processing and return when starting subscript becomes equal to ending
subscript.
For example, if user enters values for array 2, 3, 4, 5, 6 then the recursive function must display the
following output.
23456
3456
456
56
6

Answer:
#include <iostream.h>;
void PrintArray(int arrayInput[], int &s, int &e);
main ( )
{
int pause;
int TestArray [6] = {1,2,3,4,5,6};
int StartPoint = 0;
int EndPoint = 5;
PrintArray(TestArray , StartPoint, EndPoint);
cout<<"\n";
PrintArray(TestArray , StartPoint, EndPoint);
cout<<"\n";
PrintArray(TestArray , StartPoint, EndPoint);
cout<<"\n";
PrintArray(TestArray , StartPoint, EndPoint);
cout<<"\n";
PrintArray(TestArray , StartPoint, EndPoint);
cout<<"\n";
PrintArray(TestArray , StartPoint, EndPoint);
cin >> pause;
}
void PrintArray(int arrayInput[], int& s, int& e)
{
for (int i = s; i<= e; i++)
{
cout<< arrayInput[i];
}
s=s+1;
}

Question No: 17 ( Marks: 1 )


Suppose ‘z’ is a variable of type int. What will be the result of x = 27/4:

Question No: 18 ( Marks: 1 )


Give the general syntax of definition of structure.
Answer: repeat

Question No: 19 ( Marks: 2 )


Consider the structure

struct Customer

int custnum;

int salary;

float commission;

};

A programmer wants to assign 2000 for the structure member salary in the above example of
structure Customer with structure variable cust1 What line of code should he write

Question No: 20 ( Marks: 3 )


What is compiler?
Answer: repeat

Question No: 21 ( Marks: 5 )


What is the difference between while and for loop?
Answer:
when number of iterations known we use for loop otherwise we will use while loop

Question No: 22 ( Marks: 10 )


Write a void function( ); that takes integer numbers from the user and then displays the sum of
odd and even numbers entered by the user. Your program should terminate if user enters a
negative number

MIDTERM EXAMINATION 2008


Question: 17 Which data type should be used to store the value 50.7 ?

Answer:
Float
Question: 18 Why should goto statement be avoided in C/C++?

Answer: page 73
When structured programming was started, it was urged not to use the goto statement. Though goto is there
in C language but we will not use it in our programs. It will adopt the structured approach. All of our
programs will consist of sequences, decisions and loop. Because loop provide best platform to manipulate
the data.

Question: 19 What operator do you use to assign a pointer the address of another variable or
constant? Marks: 2

& sige
i.e.
int i;
int * ptri;
ptri = &i;

Question: 21 Convert the following switch statement into if statements. Marks: 5

switch (operator)
{
case '+':
result = op1 + op2;
break;
case '-':
result = op1 - op2;
break;
case 'x':
case '*':
result = op1 * op2;
break;
case '/':
result = operand1 / operand2;
break;
default:
cout << "Unknown operator" ;
}

Answer:
if(operator==’ +’)
{
result = op1 + op2;
}
else
if(operator==’ -’)
{
result = op1 - op2;
}
else
if (operator==’ *’)
{
result = op1 * op2;
}

else
if (operator==’ /’)
{
result = op1 / op2;
}
else
{
cout << "Unknown operator" ;

Question: 22 Write a recursive function that takes character array and starting subscript as arguments. In
each recursive call, the function should display the string from subscript to the end of string. The starting
subscript in first call should be 0. In each successive call, the subscript should increse by one and function
should print the array from subscript to the end of string. The function should stop processing and return
when null character encounters.
Suppose the char string passed to the function is,
"SampleString", then the function will print output as follows,
SampleString
ampleString
mpleString
pleString
so on....
Marks: 10

Question: 17 What are global variables? (1)


Answer: page459
Global variables are those that are defined outside of main. It can be accessed in entire program.

Question: 18 Is it possible to evaluate the size of structure, if yes then how? (1)
Answer: YES
#include <iostream.h>
#include <stdlib.h>
struct VehicleParts
{
int wheels;
int seats;
VehicleParts()
{
cout << "\n VehicleParts - default constructor";
}
VehicleParts(int wheels, int seats)
{
this->wheels = wheels; this->seats = seats; cout << "\n VehicleParts - parameterized constructor";
}

Question: 19 Write down the general syntax of switch statement. (2)


Answer: page 67
switch ( variable/expression )
{
case constant1 : statementLlist1 ;
case constant2: statementLlist1 ;
default: statementLlist1 ;
}

Question: 20 What will be the output of following code segment? (3)


int x[5] = {2, 4, 5, 7, 1} ;
int *ptr =&x[2];
cout << (*ptr)++ <<” ” ;
cout << *ptr++ ;
Answer: 5 6

Question: 22 What is the difference between compiler and interpreter? (5)


Answer: page 12-13
Compiler and interpreter are system software but the difference is that the complier compiles the whole
program but the interpreter is complied line by line. Compiler is efficient in performance.

Question: 23 (10)
Write a recursive function that takes three arguments (an integer array, starting subscript ‘s’ and ending
subscript ‘e’ ).
In first recursive call, the function should display the array from subscript ‘s’ (s = 0) to ‘e’ (e = size of
array). In each successive call, the function should print the array from index s+1 to e. The function should
stop processing and return when starting subscript becomes equal to ending subscript.

For example, if user enters values for array 2, 3, 4, 5, 6 then the recursive function must display the
following output.

23456
3456
456
56
6

Answer:
#include<iostream.h>
#include<conio.h>
void recursive(int [],int,int);
void main()
{
int array[5];
for(int i=0;i<5;i++)
{
cout<<"\nEnter the "<<i<<" Index number :";
cin>>array[i];
}
recursive(array,0,4); //0 is the starting index and 4 is the ending subscript
getche();
}
void recursive(int arr[],int s,int e)
{
if(s!=e+1)
{
for(int i=s;i<=e;i++)
cout<<arr[i]<<"\t";;

cout<<endl;
s++;
recursive(arr,s,e); //Recursive call
}
}

Question: 24 Write a C/C++ program which calculates the aggregate of a student.


The aggregate can be calculated by the formula: (10)
Aggregate = (Matrix_marks*2 + Fsc_marks*4) / 24

If the aggregate of a student is less than 150 then the program should display message
“You can not be admitted to VU” otherwise display the message “Congratulation! You admitted in VU

Answer:
#include <iostream.h>
main ()
{
int Matrix_marks,Fsc_marks;
float Aggregate;
cout << "Please enter your Matric numbers: ";
cin >> Matrix_marks;
cout << "Please enter your FSC numbers: ";
cin >> Fsc_marks;
Aggregate=((Matrix_marks*2)+(Fsc_marks*4))/24;
if(Aggregate < 150)
{
cout <<"You cannot be admitted to VU";
}
else
{
cout <<"Congratulation! You admitted in VU ";
}
//Aggregate = (Matrix_marks*2 + Fsc_marks*4) / 24

system("pause");
}

Question: 17 Why programming is important? Describe in ONE line. (1)


Answer: Page 4
it develops analytical and problem solving abilities. It is a creative activity and provides us a mean to express
abstract ideas.

Question: 18 Which bitwise operator returns true if both bits are different and returns false if both
bits are same? (1)

ANS
1. !=
http://web.cs.mun.ca/~michael/c/op.html

Question: 19 Why we close a file after use? (2)


Answer:
To save our data stored on file. Also this process makes our program fast and reliable.
Question: 20 Can you use an assignment operator to assign the value of one C-string to another? (3)
Answer: repeat

Question: 21 The statement int Name [2][2]; define a 2x2 array, Write the code which read data
from keyboard for this array. (5)
Answer:
for(int i=o; i<2; i++)
{
for (w=0; w<2; w++)
{
cin >>Name[i][w];
}
cout <<endl;
}
for(int i=o; i<2; i++)
{
for (w=0; w<2; w++)
{
cout<<Name[i][w]<<” ”;
}
cout <<endl;
}

Question: 22 Write a program which reads a text file “PlayersInfo.txt” residing in the current directory.
Open the file PlayersInfo.txt in read mode and assign these values to the struct Player; assume order of the
data in the file to be exactly the same as the order of struct attributes. The struct Player has following
attributes

i) Name
ii) Height
iii) Age
iv) Score
v) Game
After reading the file and assigning values to the struct, in the end close the file PlayersInfo.txt.

Question: 17 What is meant by array manipulation? (1)


Answer:
Use of arrays with different methods is called array manipulation

Question: 18 What will be the value of x after the execution of the following code segment? (1)

int x =10;
int y =30;
int *xptr = &x;
x = *xptr + 10;
Question: 19 (2)
What is the output of the code given below?
void main()
{
int a=10,b=20;
char x=1,y=0;
if(a,b,x,y)
{
cout << "EXAM";
}
}
Answer:
This code has no output, because if statement did not have any condition. So the next line cout
<< “EXAM”; will not execute.

Question: 20
What is Overflow condition? (3)
Answer: page49
When we try to store larger information in a variable, than a data type can store, overflow
condition occurs. When overflow condition occurs either a run time error is generated or wrong
value is stored.

Question: 21 Write code which read a string not greater than 20 characters from keyboard stored it
in an array Name and display it on the screen. (5)
Answer:
#include <iostream.h>
main ()
{
char name[21];
int i;
cout << "Please Enter your name: ";

cin >> name;

cout << "Your Name: ";

cout << name;

system("pause");
}

Question: 22 (10)
Write a C++ program which contains a user-define function named convertHeight which takes height
of person in centimeter as an argument. This function converts the height in centimeter into feet and
inches and displays them on the screen.

Program should prompt the user to enter height in centimeter and pass it to function convertHeight as an
argument which displays height in feet and inches.

Hint:
1 foot = 12 inches
1 inch = 2.5 cm

Answer:
#include<iostream.h>
#include<conio.h>

void convertHeight (int);


main()
{
int hight;
cout <<"Enter the High of the Person = ";
cin >> hight;
convertHeight(hight);

getche();
}

void convertHeight (int f)


{
//1 foot = 12 inches
//1 inch = 2.5 cm

int i,c;
i = f*12;
c = i*2.5;
cout <<"high in Feet = "<<f<<endl;
cout <<"high in inches = "<<i<<endl;
cout <<"high in CM = "<<c<<endl;

Question: 17 What is the functionality of the function:char *strncat (char *s1, const char *s2, size_t
n) (1)

Answer:
Appends at most n character of string s2 to array s1. The first character of s2 overwrites the
terminating null character of s1. The value of s1 is returned.
Question: 18 Write a piece of code that outputs three values of type int, long and float to a stream.
(1)

Answer:
main()
{
int a;
long b;
float c;
a = 10;
b= 124568979;
c = 6.57;
cout <<a<<"\t"<<b<<"\t"<<c;

getche();
}

Question: 19 Which bit of the number is used as a sign bit? (2)


Answer:
The most significant bit is used as a sign bit.

Question: 20 What is difference between single-dimensional and multi-dimensional array?


Answer:
Single dimentional array used to stored lists and multi dimensional arrays used to stored value as tabular
formate i.e matrix.

Question: 21 Write down the C++ program that calculates the Zakat on the amount entered by the
user

Note: Zakat is 2.5% of the given amount (5)


Answer:
#include<iostream.h>
#include<conio.h>
main()
{
int amount;
float zakat;
cout <<”Enter the Amount = “;
cin >>amount;
zakat = (amount*2.5)/100;
cout <<"Amount = "<<amount<<endl;
cout <<"Amount = "<<zakat<<endl;
getch();
}

Question: 22 What is meant by scope of identifiers? Differentiate between different scope of


identifiers and explain them with examples? (10)

Question: 17 What is meant by *num and &num? [1]


Answer:
* num is a pointer and &num is a reference to that pointer.

Question: 18 Suppose there is a pointer to structure *sPtr. How can we access the data member
‘name’ with sPtr? [1]

Answer: 233
Structure data members using pointers Using the * operator;
(*sptr).name

Question: 19 Why we close a file after use? [2]


ANS repeat
To save our data stored on file. Also this process makes our program fast and reliable

Question: 20 Define Flow chart. [3]


Answer: page 35
Flow Chart
A flow chart is a pictorial representation of a program. There are labeled geometrical symbols, together
with the arrows connecting one symbol with other. A flow chart helps in correctly designing the program by
visually showing the sequence of instructions to be executed.

Question: 21 Write down the function definition if we want to pass the arguments to a function by
reference without changing the values stored at that addresses. [5]

Question: 22
From writing to execution of the program following software are used explain for what purpose each
is used. [10]

Editor
Compiler/Interpreter
Linker
Loader

Answer:
An editor is a tool for writing the code of a program. For this purpose we used Editors in which we write
our code. We can use word processor too for this, but word processors have many other features like bold
the text, italic, coloring the text etc, so when we save a file written in a word processor, lot of other
information including the text is saved on the disk. For programming purposes we don’t need these things
we only need simple text. Text editors are such editors which save only the text which we type. So for
programming we will be using a text editor
Compiler and Interpreter
Compilers translate the English like language (Code written in C) into a language (Machine language)
which computers can understand. The Compiler read the whole program and translates it into machine
language completely. The difference between interpreter and compiler is that compiler will stop translating
if it finds an error and there will be no executable code generated whereas Interpreter will execute all the
lines before error and will stop at the line which contains the error. So Compiler needs syntactically correct
program to produce an executable code. We will be using compiler in our course
As we write the code in English and we know that computers can understand only 0s and 1s. So we need a
translator which translates the code of our program into machine language. There are two kinds of
translators which are known as Interpreter and Compilers. These translators translate our program which is
written in C-Language into Machine language. Interpreters translates the program line by line meaning it
reads one line of program and translates it, then it reads second line, translate it and so on. The benefit of it
is that we get the errors as we go along and it is very easy to correct the errors. The drawback of the
interpreter is that the program executes slowly as the interpreter translates the program line by line. Another
drawback is that as interpreters are reading the program line by line so they cannot get the overall picture of
the program hence cannot optimize the program making it efficient.

.
Linker Most of the time our program is using different routines and functions that are located in different
files, hence it needs the executable code of those routines/functions. Linker is a tool which performs this
job, it checks our program and includes all those routines or functions which we are using in our program to
make a standalone executable code and this process is called Linking

Loader after a executable program is linked and saved on the disk and it is ready for execution. We need
another process which loads the program into memory and then instruct the processor to start the execution
of the program from the first instruction (the starting point of every C program is from the main function).
This processor is known as loader. Linker and loaders are the part of development environment. These are
part of system software.

Question: 21 What are similarities and differences between Structures and Unions? (5)
Answer:
In structures, we have different data members and all of these have their own memory space. In union, the
memory location is same while the first data member is one name for that memory location. However, the
2nd data member is another name for the same location and so on. Consider the above union (i.e.
intOrChar) that contains an integer and a character as data members. What will be the size of this union?
The answer is the very simple. The union will be allocated the memory equal to that of the largest size data
member. If the int occupies four bytes on our system and char occupies one byte, the union intOrChar will
occupy four bytes
OR

Structure
In structures, the data members are public by default. It means that these are visible to all and anyone can
change them. Is there any disadvantage of this? Think about the date.
syntax
struct student
{
char name[60];
char address[100];
float GPA;
};
Unions We have another construct named union. The concept of union in C/C++ is: if we have something
in the memory, is there only one way to access that memory location or there are other ways to access it.
We have been using int and char interchangeably in our programs. We have already developed a program
that prints the ACSII codes. In this program, we have stored a char inside an integer. Is it possible to have a
memory location and use it as int or char interchangeably? For such purposes, the construct union is used.
The syntax of union is:
union intOrChar
{
int i;
char c;
};

Question: 22 Differentiate between C and c++. (10)


1. C was the C++ predecessor. As it's name implies, alot of C remains in C++. Although
not actually being more powerful than C.
2. C++ allows the programmer to more easily manage and operate with Objects, using an OOP (Object
Oriented Programming) concept
3. C++ allows the programmer to create classes, which are somewhat similar to C structures.
However, to a class can be assigned methods, functions associated to it, of various prototypes, which
can access and operate within the class, somewhat like C functions often operate on a supplied handler
pointer.
4. Although it is possible to implement anything which C++ could implement in C, C++ aids to
standardize a way in which objects are created and managed, whereas the C programmer who
implements the same system has a lot of liberty on how to actually implement the internals, and style
among programmers will vary a lot on the design choices made
5. In C, some will prefer the handler-type, where a main function initializes a handler, and that
handler can be supplied to other functions of the library as an object to operate on/through. Others will
even want to have that handler link all the related function pointers within it which then must be
called using a convention closer to C++.
C++ applications are generally slower at runtime, and are much slower to compile than C programs.
The low-level infrastructure for C++ binary execution is also larger. For these reasons C is always
commonly used even if C++ has alot of popularity, and will probably continue to be used in projects
where size and speed are primary concerns, and portable code still required (assembly would be unsuitable
then).
Question No: 17 ( Marks: 1 )
Which header file must be included while handling files?
Answer: repeat

Question No: 18 ( Marks: 1 )


What is meant by C++ statement: const int *ptr = &x;

Question No: 19 ( Marks: 2 )


What is a truth Table?
Answer: repeat

Question No: 20 ( Marks: 3 )

(i) An array day is declared as: int day[] = {1, 2, 3, 4, 5, 6, 7};

How many elements does array 'day' has?

Answer: repeat

(ii) If the declaration is changed as: int day[7] = {1, 2, 3, 4, 5, 6, 7};

How many elements does array 'day' has?

Answer: repeat

Question No: 21 ( Marks: 5 )

What are similarities and differences between Structures and Unions?

Answer: repeat
Question No: 22 ( Marks: 10 )
Write a void function( ); that takes integer numbers from the user and then displays the sum of odd and
even numbers entered by the user. Your program should terminate if user enters a negative number

Q21
What are the advantages of random access file over sequential access file? (5)
Answer:

Advantage of Random Access Files

In comparison to sequential access files, you may significantly save on the amount of disk space required
by the file by using random access.
With random access, files can be opened for both read/write at the same time. This is a great advantage over
using sequential access.

Q20
If there are 2n elements in an array then what would be the number of iterations required to search a
number using binary search and linear search? Marks: 3
Answer: repeat

For More Past Papers Visit:

www.virtualstudysolutions.blogspot.com

You might also like