0% found this document useful (0 votes)
64 views3 pages

Student - Data - Management - System C Problem

Uploaded by

Soumya Mahbub
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views3 pages

Student - Data - Management - System C Problem

Uploaded by

Soumya Mahbub
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Student Data Management System in C

Problem Description:

Design and implement a "Student Data Management System" in C to perform the following tasks:

1. Add a new student with their ID, name, grades for 5 subjects, and initialize their attendance

record.

2. Mark attendance for a student by specifying a day (1-32). Attendance is stored as a bitwise

integer.

3. Display all student records, including:

- Student ID and Name

- Grades for each subject and their average grade

- Performance category based on their average grade

- Attendance in binary format (32-bit representation).

4. Exit the program and ensure all dynamically allocated memory is freed.

Requirements:

1. Use the following C concepts:

- Structs to store student data.

- Enums for categorizing student performance as EXCELLENT, GOOD, AVERAGE, or POOR.

- Bitwise operators for attendance management.

- Dynamic memory allocation for student names.

2. Implement a menu-driven approach to allow users to interact with the system.

Performance Classification Criteria:

- EXCELLENT: Average grade >= 90

- GOOD: Average grade >= 75 and < 90

- AVERAGE: Average grade >= 50 and < 75


- POOR: Average grade < 50

Sample Input and Output:

1. Add Student

Input:

Enter Student ID: 101

Enter Student Name: John Doe

Enter Grades (5 subjects): 85 90 78 88 92

Output:

Student added successfully!

2. Mark Attendance

Input:

Enter Student ID: 101

Enter day to mark attendance (1-32): 5

Output:

Attendance marked for day 5.

3. Display Records

Output:

--- Student Records ---

Student ID: 101

Name: John Doe

Grades: 85 90 78 88 92

Average: 86.60

Category: GOOD

Attendance (Binary): 00000000000000000000000000010000


Note: The binary format of attendance will show '1' for days attended and '0' otherwise.

Constraints:

1. Assume a maximum of 32 days of attendance (bitwise integer).

2. The number of students is dynamic and managed with dynamic memory allocation.

You might also like