Previous Year Question Papers for Class 10 Computer Applications
Review targeted exam resources with the ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions. Built according to official ICSE standards for the 2026-27 academic year, these downloadable Class 10 Computer Applications question papers support effective revision and performance tracking.
Practice Class 10 Computer Applications Exam Papers
Navigate directly to the solved Computer Applications question papers using the digital viewer below. Each practice set includes detailed solutions, allowing students to instantly cross-check their work and identify areas requiring further revision.
ICSE Class 10 Computer Applications Board Exam Question Paper with Solutions
SECTION A (40 Marks)
Attempt all questions
Question 1.
(a) What are the default values of the primitive data type int and float? [2 Marks]
Answer:
The default value of int is 0 and the default value of float is 0.0f.
Teacher's Note:
a) Default values are only assigned to instance variables or class variables, not to local variables.
b) Always remember to add the suffix 'f' or 'F' for float default literal representations in explanations, though the numeric value is 0.0.
(b) Name any two OOP's principles. [2 Marks]
Answer:
1. Encapsulation
2. Inheritance
Teacher's Note:
a) Other principles include Polymorphism and Abstraction.
b) Ensure correct spelling of technical terms to avoid losing marks.
(c) What are identifiers? [2 Marks]
Answer:
Identifiers are user-defined names given to different parts of a program such as variables, methods, classes, and arrays.
Teacher's Note:
a) Identifiers can contain letters, digits, dollar signs, and underscores, but cannot start with a digit.
b) Keywords cannot be used as identifiers.
(d) Identify the literals listed below:
(i) 0.5 (ii) 'A' (iii) false (iv) "a". [2 Marks]
Answer:
(i) 0.5 - Floating-point literal (double)
(ii) 'A' - Character literal
(iii) false - Boolean literal
(iv) "a" - String literal
Teacher's Note:
a) Character literals are enclosed in single quotes, whereas string literals are enclosed in double quotes.
b) Boolean literals can only be true or false.
(e) Name the wrapper classes of char type and boolean type. [2 Marks]
Answer:
The wrapper class for char is Character and for boolean is Boolean.
Teacher's Note:
a) Wrapper classes encapsulate primitive types into objects.
b) Note that wrapper class names always begin with an uppercase letter.
Question 2.
(a) Evaluate the value of n if value of p=5, q=19.
int n = (q-p)>(p-q) ? (q-p) : (p-q); [2 Marks]
Answer:
n = 14
Teacher's Note:
a) q - p = 19 - 5 = 14, and p - q = 5 - 19 = -14. The condition 14 > -14 evaluates to true.
b) Therefore, the ternary operator selects the true branch (q - p), which is 14.
(b) Arrange the following primitive data types in an ascending order of their size:
(i) char (ii) byte (iii) double (iv) int. [2 Marks]
Answer:
byte, char, int, double
Teacher's Note:
a) byte is 1 byte, char is 2 bytes, int is 4 bytes, and double is 8 bytes.
b) Always double-check byte allocations for primitive types in Java.
(c) What is the value stored in variable res given below:
double res = Math.pow("345".indexOf('5'), 3); [2 Marks]
Answer:
res = 8.0
Teacher's Note:
a) "345".indexOf('5') returns index 2 since '5' is at the third position (0-indexed).
b) Math.pow(2, 3) evaluates to 8.0 because Math.pow returns a double value.
(d) Name the two types of constructors. [2 Marks]
Answer:
1. Default constructor (or Non-parameterized constructor)
2. Parameterized constructor
Teacher's Note:
a) Constructors have the same name as the class and do not have a return type.
b) A compiler provides a default constructor if no constructor is explicitly defined in the class.
(e) What are the values of a and b after the following function is executed, if the values passed are 30 and 50:
void paws(int a, int b)
{
a = a+b;
b = a-b;
a = a-b;
System.out.println(a + ", " + b);
} [2 Marks]
Answer:
a = 50, b = 30
Teacher's Note:
a) This is the standard algorithm for swapping two numbers without using a third variable.
b) Initial values: a = 30, b = 50. After step 1: a = 80; step 2: b = 30; step 3: a = 50.
Question 3.
(a) State the data type and value of y after the following is executed:
char x='7';
y=Character.isLetter(x); [2 Marks]
Answer:
Data type: boolean
Value: false
Teacher's Note:
a) Character.isLetter() checks whether the specified character is a letter.
b) Since '7' is a digit and not a letter, the method returns false.
(b) What is the function of catch block in exception handling? Where does it appear in a program? [2 Marks]
Answer:
The catch block is used to catch and handle exceptions thrown by the try block. It appears immediately after the try block (or after other catch blocks if multiple are present).
Teacher's Note:
a) It prevents abnormal termination of the program during runtime errors.
b) Each try block must be followed by at least one catch or finally block.
(c) State the output when the following program segment is executed:
String a="Smartphone", b="Graphic Art";
String h=a.substring(2,5);
String k=b.substring(8).toUpperCase();
System.out.println(h);
System.out.println(k.equalsIgnoreCase(h)); [2 Marks]
Answer:
art
true
Teacher's Note:
a) a.substring(2,5) extracts characters from index 2 up to 4, which is "art".
b) b.substring(8) extracts "Art", converted to uppercase gives "ART", and equalsIgnoreCase compares "ART" and "art" case-insensitively, returning true.
(d) The access specifier that gives the most accessibility is _________ and the least accessibility is _________. [2 Marks]
Answer:
public, private
Teacher's Note:
a) public members are accessible from anywhere in the application.
b) private members are accessible only within the class they are declared in.
(e) (i) Name the mathematical function which is used to find sine of an angle given in radians.
(ii) Name a string function which removes the blank spaces provided in the prefix and suffix of a string. [2 Marks]
Answer:
(i) Math.sin()
(ii) trim()
Teacher's Note:
a) Math.sin() accepts a double value representing angles in radians.
b) trim() removes leading and trailing white spaces from a string.
(f) (i) What will this code print?
int arr[] =new int [5];
System.out.println(arr);
(i) 0 (ii) value stored in arr[0] (iii) 0000 (iv) garbage value
(ii) Name the keyword which is used to resolve the conflict between method parameter and instance variables/fields. [2 Marks]
Answer:
(i) The code prints the memory address/reference hash code of the array (or similar representation like [I@... depending on JVM, but conceptually none of the choices 0, arr[0], 0000, garbage value directly apply to array reference print, however in ICSE multiple choice contexts it outputs internal reference string. Wait, standard option evaluation points to reference, but if forced among choices or if viewed as printing array reference... Let's provide exact answer: (iv) garbage value or reference, but strictly note that printing array object prints its hash representation. Let's write (i) Reference hash code / string representation).
(ii) this
Teacher's Note:
a) Printing an array directly via System.out.println(arr) prints the class name and hash code (e.g., [I@15db9742).
b) The 'this' keyword refers to the current object and resolves shadowing between instance variables and local parameters.
(g) State the package that contains the class:
(i) BufferedReader
(ii) Scanner. [2 Marks]
Answer:
(i) java.io
(ii) java.util
Teacher's Note:
a) BufferedReader belongs to the java.io package used for input/output operations.
b) Scanner belongs to the java.util package.
(h) Write the output of the following program code:
char ch;
int x=97;
do
{
ch = (char) x;
System.out.print(ch + " ");
if( x%10==0)
break;
++x;
}while(x<= 100); [2 Marks]
Answer:
a b c d
Teacher's Note:
a) x starts at 97 ('a'). In the first iteration, x = 97, ch = 'a', prints 'a ', x%10 != 0, x becomes 98.
b) This continues for 98 ('b'), 99 ('c'), and 100 ('d'). When x = 100, 100 % 10 == 0 is true, executing break, terminating the loop after printing 'd '.
(i) Write the Java expressions for:
(i) a2 + b2
(ii) 2ab [2 Marks]
Answer:
(i) Math.pow(a, 2) + Math.pow(b, 2) (or (a*a) + (b*b))
(ii) 2 * a * b
Teacher's Note:
a) Exponents in Java must be computed using Math.pow() or simple multiplication.
b) Explicit multiplication operator (*) is mandatory between operands in Java expressions.
(j) If int y=10 then find int z = (++y * (y++ +5)); [2 Marks]
Answer:
z = 121
Teacher's Note:
a) Initially y = 10. ++y increments y to 11, so the first operand is 11.
b) Next, (y++ + 5) evaluates using current y = 11, giving 11 + 5 = 16, and y becomes 12. Then 11 * 11 (Wait, let's trace carefully: first operand is 11, second operand evaluates y as 11, 11 + 5 = 16. So 11 * 16 = 176? Let's re-evaluate: y=10. ++y makes y=11. Second part: y++ uses 11, so 11+5 = 16. 11 * 16 = 176. Let's check standard evaluation: z = 11 * (11 + 5) = 11 * 16 = 176. Let's write 176).
SECTION B (60 Marks)
Attempt any four questions from this Section.
Question 4. [15 Marks]
Define a class called Parkinglot with the following description :
Instance variables / data members :
int vno - To store the vehicle number
int hours - To store the number of hours the vehicle is parked in the parking lot
double bill - To store the bill amount
Member methods :
void input() - To input and store the vno and hours.
void calculate() - To compute the parking charge at the rate of Rs. 3 for the first hour or part thereof, and Rs. 1.50 for each additional hour or part thereof.
void display() - To display the detail
Write a main method to create an object of the class and call the above methods.
Answer:
import java.util.Scanner;
public class Parkinglot
{
int vno;
int hours;
double bill;
void input()
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter vehicle number:");
vno = sc.nextInt();
System.out.println("Enter hours parked:");
hours = sc.nextInt();
}
void calculate()
{
if(hours <= 1)
{
bill = 3.0;
}
else
{
bill = 3.0 + (hours - 1) * 1.50;
}
}
void display()
{
System.out.println("Vehicle Number: " + vno);
System.out.println("Hours Parked: " + hours);
System.out.println("Total Bill: Rs. " + bill);
}
public static void main(String args[])
{
Parkinglot ob = new Parkinglot();
ob.input();
ob.calculate();
ob.display();
}
}
Teacher's Note:
a) Ensure all requested data members and member methods are explicitly declared with correct access and return types.
b) The calculation correctly handles the base rate for the first hour and incremental rate for additional hours.
Question 5. [15 Marks]
Write two separate programs to generate the following patterns using iteration (loop) statements:
(a)
*
* #
* # *
* # * #
* # * # *
(b)
5 4 3 2 1
5 4 3 2
5 4 3
5 4
5
Answer:
Program (a):
public class PatternA
{
public static void main(String args[])
{
for(int i=1; i<=5; i++)
{
for(int j=1; j<=i; j++)
{
if(j % 2 != 0)
System.out.print("* ");
else
System.out.print("# ");
}
System.out.println();
}
}
}
Program (b):
public class PatternB
{
public static void main(String args[])
{
for(int i=1; i<=5; i++)
{
for(int j=5; j>=i; j--)
{
System.out.print(j + " ");
}
System.out.println();
}
}
}
Teacher's Note:
a) Pattern (a) alternates characters based on whether the column index is odd or even.
b) Pattern (b) decrements the inner loop end limit or runs from 5 down to i.
Question 6. [15 Marks]
Write a program to input and store roll numbers, names and marks in 3 subjects of n number students in five single dimensional array and display the remark based on average marks as given below: ( The maximum marks in the subject are 100)
Average marks = Total Marks / 3
| Average marks | Remark |
|---|---|
| 85 - 100 | EXCELLENT |
| 75 - 84 | DISTINCTION |
| 60 - 74 | FIRST CLASS |
| 40 - 59 | PASS |
| Less than 40 | POOR |
Answer:
import java.util.Scanner;
public class StudentRemarks
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter number of students:");
int n = sc.nextInt();
int roll[] = new int[n];
String name[] = new String[n];
double m1[] = new double[n];
double m2[] = new double[n];
double m3[] = new double[n];
for(int i=0; i<n; i++)
{
System.out.println("Enter roll number:");
roll[i] = sc.nextInt();
sc.nextLine();
System.out.println("Enter name:");
name[i] = sc.nextLine();
System.out.println("Enter marks in 3 subjects:");
m1[i] = sc.nextDouble();
m2[i] = sc.nextDouble();
m3[i] = sc.nextDouble();
}
for(int i=0; i<n; i++)
{
double avg = (m1[i] + m2[i] + m3[i]) / 3.0;
String remark = "";
if(avg >= 85) remark = "EXCELLENT";
else if(avg >= 75) remark = "DISTINCTION";
else if(avg >= 60) remark = "FIRST CLASS";
else if(avg >= 40) remark = "PASS";
else remark = "POOR";
System.out.println("Roll: " + roll[i] + ", Name: " + name[i] + ", Average: " + avg + ", Remark: " + remark);
}
}
}
Teacher's Note:
a) Parallel arrays are used to store roll numbers, names, and individual subject marks.
b) Pay attention to scanner buffer clearing (sc.nextLine()) when mixing numeric and string inputs.
Question 7. [15 Marks]
Design a class to overload a function Joystring() as follows:
(i) void Joystring (String s, char ch1, char ch2) with one string argument and two character arguments that replaces the character argument ch1 with the character argument ch2 in the given string s and prints the new string.
Example:
Input value of s = "TECHNALAGY"
ch1 = 'A'
ch2 = 'O'
Output : "TECHNOLOGY"
(ii) void Joystring (String s) with one string argument that prints the position of the first space and the last space of the given string s.
Example:
Input value of s = "Cloud computing means Internet based computing"
Output : First index : 5
Last index : 36
(iii) void Joystring ( String s1, String s2 ) with two string arguments that combines the two strings with a space between them and prints the resultant string.
Example:
Input value of s1 = "COMMON WEALTH "
Input value of s2 = "GAMES "
Output : COMMON WEALTH GAMES
(use library functions)
Answer:
public class JoystringOverload
{
void Joystring(String s, char ch1, char ch2)
{
String res = s.replace(ch1, ch2);
System.out.println(res);
}
void Joystring(String s)
{
int first = s.indexOf(' ');
int last = s.lastIndexOf(' ');
System.out.println("First index : " + first);
System.out.println("Last index : " + last);
}
void Joystring(String s1, String s2)
{
String res = s1.trim() + " " + s2.trim();
System.out.println(res);
}
}
Teacher's Note:
a) Method overloading is achieved by having methods with the same name but different parameter lists.
b) Built-in string methods like replace(), indexOf(), lastIndexOf(), and trim() simplify string manipulation.
Question 8. [15 Marks]
Write a program to input twenty names in an array. Arrange these names in descending order of alphabets, using the bubble sort technique.
Answer:
import java.util.Scanner;
public class SortNames
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
String name[] = new String[20];
System.out.println("Enter 20 names:");
for(int i=0; i<20; i++)
{
name[i] = sc.nextLine();
}
for(int i=0; i<19; i++)
{
for(int j=0; j<19-i; j++)
{
if(name[j].compareTo(name[j+1]) < 0)
{
String temp = name[j];
name[j] = name[j+1];
name[j+1] = temp;
}
}
}
System.out.println("Names in descending order:");
for(int i=0; i<20; i++)
{
System.out.println(name[i]);
}
}
}
Teacher's Note:
a)compareTo() method is used to compare string lexically; a negative result indicates smaller string order.
b) For descending order, condition name[j].compareTo(name[j+1]) < 0 triggers swapping.
Question 9. [15 Marks]
Using the switch statement, write a menu driven program to:
(i) To find and display all the factors of a number input by the user (including 1 and excluding number itself).
Example:
Sample Input : n=15
Sample Output : 1,3,5
(ii) To find and display the factorial of a number input by the user (the factorial of a non-negative integer n, denoted by n!, is the product of all integers less than or equal to n.
Example:
Sample Input : n=5
Sample Output : 5! = 1x2x3x4x5 =120.
For an incorrect choice, an appropriate error message should be displayed.
Answer:
import java.util.Scanner;
public class MenuProgram
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter 1 for Factors");
System.out.println("Enter 2 for Factorial");
int choice = sc.nextInt();
switch(choice)
{
case 1:
System.out.println("Enter a number:");
int n1 = sc.nextInt();
System.out.print("Factors: ");
for(int i=1; i<n1; i++)
{
if(n1 % i == 0)
System.out.print(i + " ");
}
System.out.println();
break;
case 2:
System.out.println("Enter a number:");
int n2 = sc.nextInt();
long fact = 1;
System.out.print(n2 + "! = ");
for(int i=1; i<=n2; i++)
{
fact *= i;
if(i < n2)
System.out.print(i + "x");
else
System.out.print(i);
}
System.out.println(" =" + fact);
break;
default:
System.out.println("Incorrect choice!");
}
}
}
Teacher's Note:
a) A switch-case construct is ideal for menu-driven programs.
b) The default case ensures proper error handling for invalid menu options.
Free study material for Computer Application
Practice Exam Question Papers for Class 10 Computer Applications ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions
Understanding Exam Patterns with ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions
Access structured past examination sets for Class 10 Computer Applications. Solving the ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions provided above helps students understand actual exam difficulty levels, question formats, and topic distributions for both descriptive and objective sections.
Why Practice Class 10 Computer Applications Question Papers?
Reviewing official papers clarifies the exact marking scheme and structural layout established by the ICSE, enabling students to structure answers for maximum score potential.
Additional Study Resources for Class 10 Computer Applications
Download digital copies of these papers for convenient offline revision anywhere. Cross-check your completed steps against our expert solution guides to ensure complete accuracy.
FAQs
The ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions is available for download on StudiesToday.com. It includes complete set with all sections so that Class 10 students can practice with the exact same paper that came in the ICSE exams.
Yes, the solutions for ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions are prepared by subject matter experts as per official marking scheme. Class 10 students will understand the structure of answers and 'step-marks' methodology Computer Applications.
Solving previous year papers like ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions is important to understand repeat themes and question difficulty levels of Computer Applications. It helps Class 10 students to test their time management skills too.
Yes, where applicable, ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions is available in both English and Hindi mediums. All students from Class 10 can access Computer Applications study material in their preferred language.
No, all previous year question papers on StudiesToday, including ICSE Class 10 Computer Applications Board Exam Question Paper 2015 with Solutions, are provided free of charge in mobile-friendly PDF.