School Student Management System Project in C Language in Hindi | with source code

हेलो दोस्तों !
आज की इस पोस्ट में हम school student record management system का project C language में बनाना सीखेंगे। तो दोस्तों अगर आप इस प्रोजेक्ट को बनाना सीखना चाहते है तो इस पोस्ट को अंत तक जरूर पढ़े। 

इस पोस्ट के मुख्य टॉपिक्स निन्म है -
  1. Project overview. 
  2. steps of project coding. 
  3. Project source code. 
  4. Project output video. 

1.Project overview :-

तो दोस्तों सबसे पहले हम school student record management system project का ओवरव्यू देख लेते है की यह प्रोजेक्ट क्या करेगा। 


school student record management system project in c hindi



दोस्तों हमने इस प्रोजेक्ट को विसुअल स्टूडियो कोड पर C लैंग्वेज की मदद से बनाया है। यह प्रोजेक्ट स्टूडेंट के रिकॉर्ड को मैनेज करने का काम करेगा। स्टूडेंट रिकॉर्ड का मतलब स्टूडेंट की वो सारी इनफार्मेशन जो उसने प्रोवाइड की है। इस प्रोजेक्ट में हमने स्टूडेंट का रिकॉर्ड कुछ इस प्रकार रखा। student ID, student Name, student class, student age, student gender, admission date . 

यह प्रोजेक्ट स्टूडेंट की इन्हीं डिटेल्स को मैनेज करने का काम करेगा। यह प्रोजेक्ट स्टूडेंट के रिकॉर्ड को ऐड करने ,डिलीट करने, अपडेट करने, व्यू करने और साथ में सारे रिकॉर्ड को एक साथ देखने का काम करेगा।

2.steps of project coding :-

तो दोस्तों अब हम इस school student record management system project को बनाने के स्टेप्स देख लेते है की हमने इस प्रोजेक्ट की कोडिंग कैसे की है। 

दोस्तों किसी भी प्रोजेक्ट को बनाने के कुछ स्टेप्स होते है और उन्ही स्टेप में प्रोजेक्ट की कोडिंग करने से प्रोजेक्ट आसानी से बनाये जा सकते है। इसलिए आपको प्रोजेक्ट की कोडिंग के स्टेप्स के अनुसार ही प्रोजेक्ट की कोडिंग करनी चाहिए। इस प्रोजेक्ट को बनाने के भी स्टेप्स है जो निन्म है -
  1. सबसे पहले आपको स्टूडेंट के रिकॉर्ड को स्टोर करने के लिए एक स्ट्रक्चर बनाना है जिसके अंदर आपको हर रिकॉर्ड के लिए वेरिएबल बना लेना है। 
  2. अब आपको main फंक्शन के अंदर मेनू को क्रिएट करने की कोडिंग करनी है की कौन से कार्य को कराने के लिए कौन से key प्रेस करना है। 
  3. इसके बाद आपको मेनू के उन ऑपरेशन्स के लिए कोडिंग करनी है जो आप इस प्रोजेक्ट में ऐड करना चाहते है। इसके लिए आपको सभी ऑपरेशन्स के लिए अलग-अलग फंक्शन्स बनाने है। 
  4. सभी फंक्शन बन जाने के बाद आपको अब उन फंक्शन्स के अंदर वो कोडिंग करनी है जो काम आप उन फंक्शन्स से करना चाहते है। 

इस प्रोजेक्ट में आपको फाइल हैंडलिंग का यूज़ करना होगा स्टूडेंट्स के रिकॉर्ड को सेव करने और  मैनेज करने के लिए। 

3.Project source code :-

तो दोस्तों ये है school student management system का project जिसे हमने C language की मदद से vs code पर बनाया है। हमने इस प्रोजेक्ट को compile करने के लिए gcc कम्पाइलर का यूज़ किया है इसलिए अगर आप इस प्रोजेक्ट को किसी दूसरे कम्पाइलर से compile करने का प्रयास करेंगे तो शायद आपको कुछ एरर देखने को मिल सकती है। 

source code :-


#include < stdio.h >
#include < stdlib.h >
#include < time.h >
#include < windows.h >
FILE *ptr = NULL, *temp = NULL;
int countRecord = 0;
struct stuInfo
{
    int idNumber;
    char name[30];
    int class;
    int age;
    char gender[10];
    char admissionDate[12];
}student;
void addStudentRecord()
{
    printf("\nWELCOME TO AKS SCHOOL\n\n");
    student.idNumber=100;
    ptr = fopen("schoolRecord.txt", "rb");
    while (fread(&student, sizeof(student), 1, ptr)>0)
    { 
        student.idNumber+=1;       
        countRecord++;
    }               
    fclose(ptr);
    printf("Enter student name:");
    fflush(stdin);
    gets(student.name);
    printf("Enter student class:");
    scanf("%d", &student.class);
    printf("Enter student age:");
    scanf("%d", &student.age);
    printf("Enter student gender:");
    fflush(stdin);
    gets(student.gender);
    printf("Enter admission date:");
    fflush(stdin);
    gets(student.admissionDate);
    ptr = fopen("schoolRecord.txt", "ab");
    if (ptr == NULL)
    {
        printf("File is not open\n");
        exit(0);
    }
    fwrite(&student, sizeof(student), 1, ptr);
    countRecord++;
    printf("\nStudent record is successfully added\n");
    fclose(ptr);
}
void searchStudentRecord()
{
    int studentID, check = 0;
    if (countRecord==0)
    {
        printf("\nSchool Record is empty");
        goto goToEnd;
    }
    printf("\nWELCOME TO AKS SCHOOL\n\n");
    printf("Enter student ID No. :");
    scanf("%d", &studentID);
    ptr = fopen("schoolRecord.txt", "rb");
    if (ptr == NULL)
    {
        printf("File is not open\n");
        exit(0);
    }
    while (fread(&student, sizeof(student), 1, ptr) > 0 && check == 0)
    {
        if (studentID == student.idNumber)
        {
            printf("\nStudent ID No: %d\n", student.idNumber);
            printf("Student Name: %s\n", student.name);
            printf("Student Class: %d\n", student.class);
            printf("Student Age: %d\n", student.age);
            printf("Student Gender: %s\n", student.gender);
            printf("Student Admission Date: %s\n\n", student.admissionDate);
            check = 1;
        }
    }
    if (check == 0)
    {
        printf("\nSorry! Record is not found\n");
    }
    fclose(ptr);
    goToEnd:
    printf("");
}
void deleteStudentRecord()
{
    int stuID, check = 0;
    if (countRecord==0)
    {
        printf("\nSchool Record is empty");
        goto goToEnd;
    }
    printf("Enter student ID number :");
    scanf("%d", &stuID);
    ptr = fopen("schoolRecord.txt", "rb");
    temp = fopen("tempfile.txt", "wb");
    if (ptr == NULL || temp == NULL)
    {
        printf("File is not open\n");
        exit(0);
    }
    while (fread(&student, sizeof(student), 1, ptr) > 0)
    {
        if (student.idNumber != stuID)
        {
            fwrite(&student, sizeof(student), 1, temp);
            check = 1;
        }
        else
        {
            if (countRecord == 1)
            {
                check = 2;
            }
        }
    }
    fclose(ptr);
    fclose(temp);
    if (check == 1)
    {
        remove("schoolRecord.txt");
        rename("tempfile.txt", "schoolRecord.txt");
        countRecord--;
        printf("\nThe student record is successfully deleted\n");
    }
    else if (check == 2)
    {
        remove("schoolRecord.txt");
        rename("tempfile.txt", "schoolRecord.txt");
        countRecord--;
        printf("\nThe student record is successfully deleted\n");
    }
    else
    {
        printf("\nSorry! Record is not found\n");
    }
goToEnd:
printf("");
}
void updateStudentRecord()
{
    int stuID, choose, check = 0;
    char name[30];
    int class;
    int age;
    char gender[10];
    if (countRecord == 0)
    {        
        printf("\nSchool Record is empty");
        goto goToEnd;
    }
    printf("Enter student ID :");
    scanf("%d", &stuID);
    printf("\nYou can not change your ID number\n");
    printf("What do you want to update\n");
    printf("press 1 for Student Name\n");
    printf("press 2 for Student Class\n");
    printf("press 3 for Student Age\n");
again:
    printf("Choose any menu :");
    scanf("%d", &choose);
    switch (choose)
    {
    case 1:
        printf("Enter new Name :");
        fflush(stdin);
        gets(name);
        ptr = fopen("schoolRecord.txt", "rb");
        temp = fopen("tempRecord.txt", "wb");
        if (ptr == NULL || temp == NULL)
        {
            printf("File is not open\n");
            exit(0);
        }
        while (fread(&student, sizeof(student), 1, ptr) > 0)
        {
            if (student.idNumber == stuID)
            {
                strcpy(student.name, name);
                fwrite(&student, sizeof(student), 1, temp);
                check = 1;
            }
            else
            {
                fwrite(&student, sizeof(student), 1, temp);
            }
        }
        fclose(ptr);
        fclose(temp);
        if (check == 1)
        {
            remove("schoolRecord.txt");
            rename("tempRecord.txt", "schoolRecord.txt");
            printf("\nThe student record is successfully updated\n");
        }
        else
        {
            printf("\nStudent record is not found\n");
        }
        break;
    case 2:
        printf("Enter new Class :");
        scanf("%d", &class);
        ptr = fopen("schoolRecord.txt", "rb");
        temp = fopen("tempRecord.txt", "wb");
        if (ptr == NULL || temp == NULL)
        {
            printf("File is not open\n");
            exit(0);
        }
        while (fread(&student, sizeof(student), 1, ptr) > 0)
        {
            if (student.idNumber == stuID)
            {
                student.class = class;
                fwrite(&student, sizeof(student), 1, temp);
                check = 1;
            }
            else
            {
                fwrite(&student, sizeof(student), 1, temp);
            }
        }
        fclose(ptr);
        fclose(temp);
        if (check == 1)
        {
            remove("schoolRecord.txt");
            rename("tempRecord.txt", "schoolRecord.txt");
            printf("\nThe student record is successfully updated\n");
        }
        else
        {
            printf("\nStudent record is not found\n");
        }
        break;
    case 3:
        printf("Enter new Age :");
        scanf("%d", &age);
        ptr = fopen("schoolRecord.txt", "rb");
        temp = fopen("tempRecord.txt", "wb");
        if (ptr == NULL || temp == NULL)
        {
            printf("File is not open\n");
            exit(0);
        }
        while (fread(&student, sizeof(student), 1, ptr) > 0)
        {
            if (student.idNumber == stuID)
            {
                student.age = age;
                fwrite(&student, sizeof(student), 1, temp);
                check = 1;
            }
            else
            {
                fwrite(&student, sizeof(student), 1, temp);
            }
        }
        fclose(ptr);
        fclose(temp);
        if (check == 1)
        {
            remove("schoolRecord.txt");
            rename("tempRecord.txt", "schoolRecord.txt");
            printf("\nThe student record is successfully updated\n");
        }
        else
        {
            printf("\nStudent record is not found\n");
        }
        break;
    default:
        printf("Invalid press try again\n");
        goto again;
    }
goToEnd:
printf("");
}
void showAllStudentRecord()
{
    char check;
    int class;
    if (countRecord == 0)
    {
        printf("\nSchool Record is empty");
        goto goToEnd;
    }
    ptr = fopen("schoolRecord.txt", "rb");
    if (ptr == NULL)
    {
        printf("File is not open\n");
        exit(0);
    }
again:
    printf("If you want show all classes student record then press 'Y'\n");
    printf("If you want to show a specific class student record then press 'N'\n");
    fflush(stdin);
    scanf("%c", &check);
    if (check == 'Y' || check == 'y')
    {
        while (fread(&student, sizeof(student), 1, ptr) > 0)
        {
            printf("%d\t%s\t %d\t", student.idNumber, student.name, student.class);
            printf("%d\t%s\t %s\n", student.age, student.gender, student.admissionDate);
        }
    }
    else if (check == 'N' || check == 'n')
    {
    again1:
        printf("Enter class :");
        scanf("%d", &class);
        if (class >= 1 && class <= 12)
        {
            while (fread(&student, sizeof(student), 1, ptr) > 0)
            {
                if (student.class == class)
                {
                    printf("%d\t%s\t %d\t", student.idNumber, student.name, student.class);
                    printf("%d\t%s\t %s\n", student.age, student.gender, student.admissionDate);
                }
            }
        }
        else
        {
            printf("Invalid class try again\n");
            goto again1;
        }
    }
    else
    {
        printf("Invalid press try again\n");
        goto again;
    }
    fclose(ptr);
goToEnd:
printf("");
}
void main()
{
    int choose;
    while (1)
    {
    again:
        printf("\nPress 1 for add student record\n");
        printf("Press 2 for search student record\n");
        printf("Press 3 for delete student record\n");
        printf("Press 4 for update student record\n");
        printf("Press 5 for show all student record\n");
        printf("Press 6 for eixt\n");
        printf("Please choose any menu:");
        scanf("%d", &choose);
        switch (choose)
        {
        case 1:
            addStudentRecord();
            break;
        case 2:
            searchStudentRecord();
            break;
        case 3:
            deleteStudentRecord();
            break;
        case 4:
            updateStudentRecord();
            break;
        case 5:
            showAllStudentRecord();
            break;
        case 6:
            exit(0);
        default:
            printf("Invalid Press try again\n");
            goto again;
        }
    }
}

4.Project output video :-

दोस्तों अगर आप school student record management system के project का आउटपुट देखना चाहते है तो आप हमारी यह वीडियो you tube पर देख सकते है। इस वीडियो में हमने इस प्रोजेक्ट को रन करके दिखाया है की किस प्रकार यह प्रोजेक्ट वर्क करता है। तो अगर आप इस वीडियो को you tube पर देखना चाहते है तो नीचे क्लिक करें।


student management system project in c language hindi




इन पोस्ट को भी पढ़े -

Author :- तो दोस्तों अब हमारी यह पोस्ट ख़त्म होती है। हम आशा करते है की आप school student record management system का project C language की मदद से बनाना सीख गए होंगे। तो दोस्तों आज के लिए बस इतना ही फिर मिलेंगे ऐसी ही किसी और मज़ेदार पोस्ट में तब तक के लिए अलविदा !

Post a Comment

0 Comments