🎯 এই পর্বে যা জানবে:
- কীভাবে ছোট প্রজেক্ট ডিজাইন করতে হয়
- ফাইল হ্যান্ডলিং, স্ট্রাকচার ও ফাংশন একসাথে ব্যবহার
- ব্যবহারকারীর ইনপুট গ্রহণ ও ডেটা সংরক্ষণ
- একটি পূর্ণাঙ্গ স্টুডেন্ট ম্যানেজমেন্ট সিস্টেম তৈরি
🧩 প্রজেক্ট আইডিয়া: স্টুডেন্ট ম্যানেজমেন্ট সিস্টেম
এই প্রজেক্টের মাধ্যমে তুমি এমন একটি প্রোগ্রাম তৈরি করবে যা দিয়ে —
- নতুন ছাত্র যোগ করা যাবে,
- সব ছাত্রের তথ্য দেখা যাবে,
- নির্দিষ্ট ছাত্র খোঁজা যাবে,
- এবং তথ্য ফাইলে সংরক্ষণ হবে।
🧱 প্রজেক্টের স্ট্রাকচার
| ফাইল নাম | কাজ |
|---|---|
student.h | স্ট্রাকচার ও ফাংশন ডিক্লেয়ারেশন |
student.c | ফাংশনের সংজ্ঞা |
main.c | মূল প্রোগ্রাম |
🧾 student.h
#ifndef STUDENT_H
#define STUDENT_H
struct Student {
int id;
char name[50];
float marks;
};
void addStudent();
void showAllStudents();
void searchStudent(int id);
#endif🧾 student.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "student.h"
void addStudent() {
struct Student s;
FILE *fp = fopen("students.txt", "a");
if (fp == NULL) {
printf("File not found!\n");
return;
}
printf("Enter ID: ");
scanf("%d", &s.id);
printf("Enter Name: ");
scanf("%s", s.name);
printf("Enter Marks: ");
scanf("%f", &s.marks);
fprintf(fp, "%d %s %.2f\n", s.id, s.name, s.marks);
fclose(fp);
printf("✅ Student added successfully!\n");
}
void showAllStudents() {
struct Student s;
FILE *fp = fopen("students.txt", "r");
if (fp == NULL) {
printf("No data found!\n");
return;
}
printf("\n--- Student List ---\n");
while (fscanf(fp, "%d %s %f", &s.id, s.name, &s.marks) != EOF) {
printf("ID: %d | Name: %s | Marks: %.2f\n", s.id, s.name, s.marks);
}
fclose(fp);
}
void searchStudent(int id) {
struct Student s;
FILE *fp = fopen("students.txt", "r");
if (fp == NULL) {
printf("No data found!\n");
return;
}
int found = 0;
while (fscanf(fp, "%d %s %f", &s.id, s.name, &s.marks) != EOF) {
if (s.id == id) {
printf("\n🎓 Student Found!\n");
printf("ID: %d | Name: %s | Marks: %.2f\n", s.id, s.name, s.marks);
found = 1;
break;
}
}
if (!found) printf("❌ Student not found!\n");
fclose(fp);
}🧾 main.c
#include <stdio.h>
#include "student.h"
int main() {
int choice, id;
while (1) {
printf("\n===== Student Management System =====\n");
printf("1. Add Student\n");
printf("2. Show All Students\n");
printf("3. Search Student\n");
printf("4. Exit\n");
printf("Enter your choice: ");
scanf("%d", &choice);
switch (choice) {
case 1:
addStudent();
break;
case 2:
showAllStudents();
break;
case 3:
printf("Enter ID to search: ");
scanf("%d", &id);
searchStudent(id);
break;
case 4:
printf("👋 Exiting program...\n");
return 0;
default:
printf("❌ Invalid choice! Try again.\n");
}
}
}⚙️ কম্পাইল ও রান করার নিয়ম
টার্মিনালে নিচের কমান্ড লিখো 👇
gcc main.c student.c -o student
./student📋 প্রজেক্টের আউটপুট
===== Student Management System =====
1. Add Student
2. Show All Students
3. Search Student
4. Exit
Enter your choice: 1
Enter ID: 101
Enter Name: Rahim
Enter Marks: 88.5
✅ Student added successfully!💡 যা যা শিখলে
✅ কিভাবে একাধিক ফাইল নিয়ে প্রজেক্ট তৈরি করতে হয়
✅ ফাইল হ্যান্ডলিং, স্ট্রাকচার ও ফাংশনের একত্র ব্যবহার
✅ ডেটা সংরক্ষণ ও সার্চ করার ধারণা
✅ ইউজার ইন্টারফেস তৈরির কৌশল



