CS 2nd Year | Ultimate Exam Guide | DBMS, C Programs & Tips

📘 CS 2nd Year Exam Vault

Long questions · Programs · DBMS · MS Access · C Programming

A🔍 A🔍
📌 Guidelines for Top Grades:
▪️ Master definitions & compare-contrast (DBMS vs File system)
▪️ Practice all C programs by hand — write syntax & dry-run
▪️ Use the “mnemonic tricks” beside each topic to memorize faster
▪️ For queries & filters, practice MS Access screenshots mentally
▪️ Adjust font size for readability, toggle dark mode for night study
💡 Tip: Every long question has a short memorization hook – scroll inside cards!

📁 CH #1: Database Management System (DBMS)

🧠 Mnemonic Trick: “FACTS” → Features: Flexibility, Accessibility, Concurrency, Transaction, Security. Components: Hardware, Software, Data, Procedures, Users.
✅ 1. Features & components of DBMS + types of database models
Features: Data persistence, multi-user access, data integrity, backup/recovery, security, ACID properties.
Components: Hardware, Software (DBMS engine), Data (operational + metadata), Procedures (rules), Users (DBA, programmers, end-users).
Database Models: Hierarchical (tree), Network (graph), Relational (tables), Object-oriented, NoSQL (document, key-value).

✅ 2. Advantages & Disadvantages of DBMS
Advantages: reduced redundancy, data consistency, data sharing, security, backup, standards.
Disadvantages: high cost, complexity, performance overhead, need for skilled personnel, vulnerability to single-point failure.

✅ 3. What is data processing? Activities involved.
Data processing = conversion of raw data into meaningful information. Activities: Capturing/input, validation, sorting/classification, calculation, summarization, storage, retrieval, reporting.

✅ 4. Objectives of DBMS
Data availability, controlled redundancy, data independence, efficient access, integrity, security, concurrency control, recovery, privacy.

✅ 5. File types from usage point of view
Master file (permanent reference), Transaction file (daily updates), Reference file (lookup), Report file (output), Backup file (safety), Archive file (historical).

✅ 6. Data Models
Conceptual (high-level), Representational (Relational, Network, Hierarchical), Physical (low-level storage). Relational model uses tables, keys, relationships.

🗄️ CH #6: MS Access Essentials

🧠 Quick Memory: “FAT QDP” Filters(Filter by Form/Selection), Table, Query, Data types, Properties.
✅ 1. What is Filter? Two types in MS Access
Filter = temporary subset of records. Types: Filter By Selection (show records matching selected value) & Filter By Form (criteria using form grid, multiple conditions).

✅ 2. Table – characteristics & modification methods
Table: collection of records (rows) and fields (columns). Characteristics: unique names, data types, primary key. Modify table: add/delete fields, change data type, rename, set validation rules, use Design View or Datasheet View.

✅ 3. Data types in MS Access
Short Text, Long Text, Number, Date/Time, Currency, AutoNumber, Yes/No, OLE Object, Hyperlink, Attachment, Calculated, Lookup Wizard.

✅ 4. Field Properties in MS Access
Field Size, Format, Input Mask, Caption, Default Value, Validation Rule/Text, Required, Indexed, Smart Tags, etc.

✅ 5. Query – uses & advantages
Query = request for data based on criteria. Uses: retrieve specific data, update/delete, calculations, join tables. Advantages: dynamic results, time-saving, reduce data redundancy, virtual tables.

⚙️ CH #8: C Programming Fundamentals

✅ 1. Structure of C program with example
// Documentation
#include 
int main() {
    // statements
    return 0;
}
Example: Hello World program.

✅ 2. Types of languages & characteristics of High-Level Language
Machine, Assembly, High-Level (C, Python), 4GL. Characteristics of HLL: English-like, machine independent, easier debugging, portable, requires compiler/interpreter.

✅ 3. Error types in C
Syntax errors (grammar), Runtime errors (division by zero), Logical errors (wrong output), Linker errors (missing definitions).

✅ 4. Create, edit, compile, link, execute C program
Editor → Source code (.c) → Compiler → Object code → Linker → Executable (.exe) → Loader → Output.

🔄 Chapter 11: Conditional Programs (if/else, switch)

🎯 Practice hack: Write each program on paper, trace inputs mentally: edge cases like negative, zero, boundary.
// 1. Vowel/Consonant using switch
#include 
int main() {
    char ch;
    printf("Enter a character: ");
    scanf("%c", &ch);
    switch(ch) {
        case 'a': case 'e': case 'i': case 'o': case 'u':
        case 'A': case 'E': case 'I': case 'O': case 'U':
            printf("Vowel"); break;
        default: printf("Consonant");
    }
    return 0;
}
// 2. Largest among three numbers
#include 
int main() {
    int a,b,c, largest;
    printf("Enter three numbers: ");
    scanf("%d %d %d",&a,&b,&c);
    largest = (a>b)?((a>c)?a:c):((b>c)?b:c);
    printf("Largest = %d", largest);
    return 0;
}
// 3. Grade based on marks
#include 
int main() {
    int marks;
    printf("Enter marks: "); scanf("%d",&marks);
    if(marks>=90) printf("Grade A");
    else if(marks>=75) printf("Grade B");
    else if(marks>=60) printf("Grade C");
    else if(marks>=45) printf("Grade D");
    else printf("Fail");
    return 0;
}
// 4. Leap year using if-else
#include 
int main() {
    int year;
    printf("Enter year: "); scanf("%d",&year);
    if((year%4==0 && year%100!=0) || (year%400==0))
        printf("Leap Year");
    else printf("Not a Leap Year");
    return 0;
}
// 5. Positive, negative or zero
#include 
int main() {
    int num;
    printf("Enter number: "); scanf("%d",&num);
    if(num>0) printf("Positive");
    else if(num<0) printf("Negative");
    else printf("Zero");
    return 0;
}
// 6. Even or odd
#include 
int main() { int n; scanf("%d",&n); if(n%2==0) printf("Even"); else printf("Odd"); return 0; }
// 7. Day of week name (1=Monday)
#include 
int main() { int d; scanf("%d",&d);
switch(d){ case 1:printf("Monday");break; case 2:printf("Tuesday");break; case 3:printf("Wednesday");break; case 4:printf("Thursday");break; case 5:printf("Friday");break; case 6:printf("Saturday");break; case 7:printf("Sunday");break; default:printf("Invalid");} return 0;}
// 8. Divisible by 3 or not
#include 
int main() { int n; printf("Enter num: "); scanf("%d",&n); if(n%3==0) printf("Divisible by 3"); else printf("Not divisible"); return 0; }

🔄 Chapter 12: Loop Programs (for/while)

// 1. Table of a number
#include 
int main() { int n,i; scanf("%d",&n); for(i=1;i<=10;i++) printf("%d x %d = %d\n",n,i,n*i); return 0; }
// 2. Natural numbers 1 to 100
#include 
int main() { for(int i=1;i<=100;i++) printf("%d ",i); return 0; }
// 3. First 10 numbers & their sum
#include 
int main() { int sum=0; for(int i=1;i<=10;i++) { printf("%d ",i); sum+=i; } printf("\nSum = %d",sum); return 0; }
// 4. Numbers 1 to 5 and their square (two lines)
#include 
int main() { 
    for(int i=1;i<=5;i++) printf("%d ",i); 
    printf("\n");
    for(int i=1;i<=5;i++) printf("%d ",i*i);
    return 0; 
}
// 5. Sum of series 2+4+6+...+100
#include 
int main() { int sum=0; for(int i=2;i<=100;i+=2) sum+=i; printf("Sum = %d",sum); return 0; }
// 6. Sum series 1+2+5+...+99 (careful: series 1+2+5+... ? likely 1,2,3? but follow given: maybe increment 3? but safe pattern: 1,2,5? Provided ambiguous but answer typical sum 1..99)
// correct based on standard: sum 1 to 99
#include 
int main() { int sum=0; for(int i=1;i<=99;i++) sum+=i; printf("Sum 1..99 = %d",sum); return 0; }
// 7. Sum 1 + 1/2 + 1/3 + ... + 1/50 (float)
#include 
int main() { float sum=0; for(int i=1;i<=50;i++) sum+=1.0/i; printf("Sum = %f",sum); return 0; }
// 8. Sum squares 1+4+9+...+81 (1^2 to 9^2)
#include 
int main() { int sum=0; for(int i=1;i<=9;i++) sum+=i*i; printf("Sum of squares = %d",sum); return 0; }

💡 Short Tips & Memorization for each topic

🔹 DBMS Features → "DATA SECURE" (Data abstraction, Atomicity, Transactions, ACID, Security, Efficient, Concurrent, Uninterrupted, Recovery, Easy).
🔹 MS Access Data Types → "TAN C.A. HO" (Text, AutoNumber, Number, Currency, Attachment, Hyperlink, OLE).
🔹 C errors → SRL (Syntax, Runtime, Logical) + Linker.
🔹 Conditional programs → Always use else-if ladder for grades; switch for vowel/day.
🔹 Loops → For series summation, initialize sum=0, use proper increment/decrement.
🔹 Filter types → "Selection matches selected value, Form uses grid".