ST. XAVIER’S COLLEGE MAITIGHAR KATHMANDU DEPARTMENT OF COMPUTER SCIENCE Project Report A C program to create the Marksheet of Students St.Xavier’s College Departmental Research Submitted By: Prakriti Acharya (022BIM039) Srijana Khatri (022BIM055) Shreskar Bista (022BIM052) Submitted to: Er. Rabin Maharjan Department of Computer Science May 2023 CERTIFICATION PROJECT REPORT On A C program to create the Marksheet of Students By: Prakriti Acharya Srijana Khatri Shreskar Bista Approved by: 1. Head Of Department Ganesh Yogi Mr.Mr. Ganesh Yogi (Signature) (Name) (Date) 2 Abstract The proposed project aims to develop a student marksheet using C programming language to help educators and academic institutions manage student grades more efficiently. The software will provide a user-friendly interface to store, update, and calculate student grades, automate manual tasks, and generate reports to provide insights into student performance. The project will leverage the advantages of the C programming language to provide a portable, efficient, and effective solution for educators and academic institutions. The software's flexibility and scalability will ensure that it can evolve as necessary to meet the changing needs of educators and academic institutions. The proposed project will simplify the process of grade management, promote academic success, and enable educators to provide timely feedback to students and parents. 3 Acknowledgement We would like to express our gratitude to Mr. Ganesh yogi, Head of Department, for his valuable direction, persistent encouragement, and timely suggestions. We would also want to thank our teacher, Mr. Rabin Maharjan, for allowing us to undertake this research. It would not have been feasible to complete this work or the research that supported it without his extraordinary supervision. He was a huge assistance to us with his thorough supervision, enthusiastic support, and constructive criticism of this research effort. His expertise and critical suggestions were important in determining the project's direction and scope. Our group would like to express its heartfelt appreciation for presenting us with such a wonderful experience. Throughout our research, we were able to learn a lot about programming and gain practical experience with our subject matter. Finally, this research would not have been possible without the invaluable assistance of our group members. Their breakthroughs, ideas, and creations were crucial in finishing this job on schedule. Their efforts and dedication are much appreciated. 4 Table of Contents CERTIFICATION................................................................................................................. 2 Abstract ................................................................................................................................ 3 Acknowledgement.................................................................................................................. 4 Chapter 1: Introduction ......................................................................................................... 7 1.1. Background .............................................................................................................. 7 1.2. Problem Statement .................................................................................................... 7 1.3. Motivation ................................................................................................................ 8 Chapter 2: Literature Survey ................................................................................................. 9 Literature Survey ................................................................................................................. 9 Chapter 3: Research Methodology ........................................................................................ 10 3.1. Software: .................................................................................................................... 10 3.2. Programming Language Domain: .................................................................................. 10 3.3. End User Interface: ...................................................................................................... 10 3.4. Evolution Aspect: ........................................................................................................ 10 3.5. Algorithm ................................................................................................................... 10 3.6. Necessary Diagram (Flowchart):.................................................................................... 11 3.7. End User Interface ....................................................................................................... 13 Chapter 4: Result and Analysis ............................................................................................ 14 Output: ............................................................................................................................. 16 Chapter 5: Conclusion and Future work ............................................................................... 19 Reference ............................................................................................................................ 20 5 List of figures Figure 1: Flowchart representing the operation of marksheet generator .............................................12 Figure 3: Retrieving data from the user .........................................................................................16 Figure 2: Welcome Interface Initial confirmation stage ...................................................................16 Figure 4: Output when the user denies generating a Marksheet .........................................................17 Figure 5: Output when the user accepts generating a Marksheet .......................................................18 6 Chapter 1: Introduction 1.1. Background The purpose of this project is to create a student marksheet using the C programming language. This program is designed to allow teachers and academic institutions to manage their student grades more efficiently. The software is capable of storing, updating, and calculating student grades, generating reports, and providing insights into student performance. The project aims to simplify the process of grade management for educators and administrators by automating manual tasks such as grade entry and calculation. This program is user-friendly and designed with a simple interface to ensure easy navigation for users. The project consists of several key components, including a database for storing student information, a user interface for entering and updating grades, and a set of functions to calculate student averages and generate reports. The database will be designed to accommodate a large number of students and their grades, and it will be possible to easily search, sort, and filter data. The student marks sheet will provide a comprehensive view of student performance, including individual subject scores, total marks, grade points, and grade averages. Reports can be generated for individual students or for groups of students, making it easier for educators to identify areas where students may need additional support. In summary, the project aims to create a student marks sheet that will help educators and academic institutions manage student grades more efficiently. This program will provide an easy-to-use interface for entering and updating grades, as well as generating reports and insights into student performance. Problem Statement 1.2. Managing student grades and academic performance manually can be a time-consuming and error-prone process for educators and academic institutions. The process of grading and calculating grades can be tedious, and it can lead to delays in providing timely feedback to students and parents. As a result, there is a need for a more efficient and effective way to manage student grades and academic performance. Here are the few things that needs to be improved: The proposed project aims to address this problem by creating a student marksheet using C programming language. 7 The software will provide a centralized database to store all student grades, automate manual tasks such as grade calculation, and generate reports to provide insights into student performance. The program will be user-friendly and designed with a simple interface to ensure easy navigation for users. The proposed project will help educators and academic institutions to manage student grades more efficiently and effectively, saving valuable time and effort, and promoting academic success for students. . 1.3. Motivation In today's academic environment, managing student grades and academic performance has become an increasingly challenging task for educators and academic institutions. The manual process of grade management is time-consuming, prone to errors, and can lead to delays in providing timely feedback to students and parents. Creating a student marksheet using C programming language will simplify the grade management process and help educators and academic institutions to keep track of student performance effectively. This program will provide a centralized database to store all student grades, making it easier to access and update them as necessary. By automating manual tasks such as grade calculation, educators can save valuable time and effort, allowing them to focus on providing better education to their students. Additionally, the software will provide insights into student performance, making it easier to identify areas where students need additional support. The proposed project will offer a user-friendly interface, which will make it easier for educators to navigate and input data, and the software's report generation capabilities will provide a comprehensive view of student performance. This will enable educators to provide timely feedback to students and parents and to identify any areas of concern. In summary, creating a student marksheet using C programming language will provide an efficient and effective solution to manage student grades and academic performance. The software's automation of manual tasks, user-friendly interface, and report generation capabilities will help educators to focus on providing better education to their students and to promote their academic success. 8 Chapter 2: Literature Survey Literature Survey Byron Gottfried in his book "Programming with C” introduces the basic concept of c programming language where he describes the basic structure of the whole program the basic structuralism of the program is based on the this concept describing the basic elements of c. [1] “The C Programming Language" by Brian W. Kernighan and Dennis M. Ritchie It provides a clear and concise introduction to the language, covering everything from basic syntax to more advanced concepts like pointers and memory management. [2] "C: How to Program" by Deitel and Deitel is a comprehensive guide to learning the C programming language. The book covers everything from basic concepts such as variables and control structures to more advanced topics like file handling and dynamic memory allocation. [3] "A Book on C" by Al Kelley and Ira Pohl is a comprehensive guide to learning the C programming language. The book covers all the essential topics in C programming, from basic concepts such as Variables, Control Structures, Functions, Pointers, Arrays, Memory Management. [4] 9 Chapter 3: Research Methodology 3.1. Software: Integrated development environment (IDE) software was used to write, debug, and test the code for the marksheet generation system. Dev-C++ is a open-source lightweight and easyto-use IDE software for C programming that includes features like code highlighting and debugging tools. Dev-C++ is the IDE software used for this project. The incorporation of technology like as integrated source control, debugging tools, and a user-friendly interface made the development process more efficient. 3.2. Programming Language Domain: The project will be developed using C programming language, which is widely used for developing software solutions for the education sector. The language will be used to create a centralized database to store all student grades, automate manual tasks, and generate reports to provide insights into student performance. 3.3. End User Interface: The software will be designed to provide a user-friendly interface to ensure easy navigation for users. The program will have a simple and intuitive design to allow educators and academic institutions to input and update student grades quickly. 3.4. Evolution Aspect: The proposed project will be developed with the ability to evolve and scale as necessary. The software will be designed with the flexibility to accommodate future changes and upgrades. Additionally, the software will be developed with the option to integrate with other systems, providing further flexibility and scalability. 3.5. Algorithm Here is an algorithm of the marksheet generation process in C: Step 1: Start 10 Step 2: Do you want to create a mark sheet? {If yes, GOTO Step 3 If No GOTO Step 11} Step 3: Enter yours personal details Step 4: Ask for marks of different subjects Step 5: If marks >0 and marks <100 {Yes, GOTO Step 6 No, display invalid and GOTO Step 4} Step 6: Store marks Step 7: Do you want to create a mark sheet? {Yes, go to Step 8 No, GOTO Step 11} Step 8: Total = sum of marks Step 9: Percentage= Total/ no of subjects Step 10: Display mark sheet Step 11: Stop 3.6. Necessary Diagram (Flowchart): A flowchart is a graphical representation of a program's control or logic flow. It displays the order of actions and key decision points in the marksheet generating process, makes it simple to understand the fundamental structure and flow of the marksheet. The program’s logic's possible flaws or bottlenecks can also be found using this technique. The flowchart to represent the operation of the marksheet generator is presented in the following page: 11 Start No Display if you want to create a marksheet? Yes Ask for personal details Ask for marks in different subjects If marks >0 and marks <100 Yes No Store Marks Display invalid No Display if you want to create a marksheet? Yes Total= sum of marks Percentage = Total / no of subjects Display marksheet Stop Figure 1: Flowchart representing the operation of marksheet generator 12 3.7. End User Interface The end user interface is be designed to be simple and intuitive, with clear input fields. It includes a welcome screen, data input section and the marksheet generation confirmation section making it an interactive and easy to use interface. The output section will display the relevant information in a clean and easy-to-read format. Welcome Screen: When a user launches the game code, the welcome screen will be the first screen they view. It will show the game's title, how to play instructions, and some more messages. Data Input Section Name: Text field for student's name Personal Details: Text field for student's parent’s name and school name Roll Number: Text field for student's roll number Class: Text field for student's class Subjects: Dropdown list or text fields for subject names (e.g., Math, Science, English, etc.) Marks Obtained: Text fields for marks obtained in each subject Marksheet Generation Confirmation Section Confirmation statement Output Section Total Marks Obtained: Text field displaying the total marks obtained by the student Percentage: Text field displaying the percentage obtained by the student Overall Grade: Text field displaying the overall grade obtained by the student Overall Division: Text field displaying the overall division obtained by the student 13 Chapter 4: Result and Analysis Our project mainly aims to create a marksheet in an efficient way to help educators and academic institutions manage student grades more efficiently. The program provides a userfriendly interface to store, update, and calculate student grades, generate reports, and provide insights into student performance. The development of a marksheet generator using C programming language provides the following outcomes: 1. Reliable The project is results in a reliable, efficient, and user-friendly marksheet generator that can calculate and generate marksheets for a large number of students. It is equally secured and can easily store data on a large scale. 2. Time Efficient Time is a crucial matter to waste, even more crucial for educational institutions. Thus this project aids to reduce the time and effort required to generate marksheets, resulting in increased efficiency for educational institutions. 3. Accuracy The accuracy of the mark sheet generator in calculating and generating the mark sheets for each student is found to be accurate according to the provided data and the algorithm it is based on. 4. Maintainability The program can be continuously improved with identification of potential areas for improvement in the marksheet generation process. The feedback can be addressed and be considered as per the demand. Analysis The marksheet generation project in C programming can help educational institutions streamline their administrative processes by automating the process of calculating grades and generating marksheets. The user-friendly interface of the project can improve the overall experience of generating marksheets for both administrators and students, reducing the likelihood of errors or confusion in the process. It can reduce the potential for human error and increase accuracy and consistency of grades. It can be further improved by incorporating features such as data validation, error handling, marksheet printing and data storage capabilities. Overall, the marksheet generation project in C programming can provide significant benefits to educational institutions by improving the efficiency and accuracy of their administrative 14 processes, and enhancing the overall experience of generating marksheets for both administrators and students. 15 Output: Figure 2: Welcome Interface Initial confirmation stage Figure 3: Retrieving data from the user 16 Figure 4: Output when the user denies generating a Marksheet 17 Figure 5: Output when the user accepts generating a Marksheet 18 Chapter 5: Conclusion and Future work Overall, the marksheet generation project in C programming language is an efficient and user-friendly solution for educational institutions to generate marksheets for their students. The software will leverage the advantages of the C programming language to provide a userfriendly interface, automate manual tasks, and generate reports to provide insights into student performance. By automating the calculation of grades and providing a simple and intuitive interface, the project can significantly improve the efficiency and accuracy of the marksheets generation process. The software's flexibility and scalability will ensure that it can evolve as necessary to meet the changing needs of educators and academic institutions. Future Work: Although the marksheet generation project is functional, there is still room for improvement and future work. Some potential future work includes: Integration with a database: The project could be integrated with a database to store student information and marksheets for easier retrieval and analysis. Advanced features: Advanced features such as data validation, marksheet printing, error handling, and advanced printing options can be incorporated into the project to enhance the user experience and increase the overall functionality of the project. User authentication: Implementing user authentication could enhance the security of the application and ensure that only authorized users can generate marksheets. Overall, the marksheet generation project in C programming language has significant potential for future improvements and extensions. By continuing to develop and refine this project, it can continue to provide educational institutions with an efficient and user-friendly solution for generating marksheets. 19 Reference [1] Byron Gottfried: "Programming with C,” Fourth Edition, McGraw Hill Education.[23 rd February, 2023] [2] Brian W. Keringhan, Dennis M. Ritchie, The C programming Language, Second Edition, PHI Publication. .[25th February, 2023] [3] Deitel, & Deitel, “C: How to Program”, Ninth Edition, Pearson Publication.[3rd March, 2023] [4] Al Kelley, Ira Pohl: "A Book on C", Fourth Edition, Pearson Education.[6th March, 2023] [5] Yeshvant Kanetkar, “Let Us C”, 17 th Edition, BPB publication, 2020. 4. Herbert Schildt, C.[10th March, 2023] 20