Update README.md

main
pfzrlk62p 2 years ago
parent 7ef01232e9
commit eeb22c1606

@ -1,2 +1,97 @@
# Cyuyan
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STUDENTS 100
#define MAX_NAME_LENGTH 50
#define MAX_ASSIGNMENTS 10
typedef struct {
char name[MAX_NAME_LENGTH];
int studentID;
int assignments[MAX_ASSIGNMENTS];
int numAssignments;
} Student;
typedef struct {
Student students[MAX_STUDENTS];
int numStudents;
} Classroom;
void addStudent(Classroom *classroom) {
if (classroom->numStudents >= MAX_STUDENTS) {
printf("Cannot add more students.\n");
return;
}
Student newStudent;
printf("Enter student name: ");
scanf("%s", newStudent.name);
printf("Enter student ID: ");
scanf("%d", &newStudent.studentID);
newStudent.numAssignments = 0;
for (int i = 0; i < MAX_ASSIGNMENTS; i++) {
newStudent.assignments[i] = 0;
}
classroom->students[classroom->numStudents] = newStudent;
classroom->numStudents++;
}
void displayStudent(const Student *student) {
printf("Student Name: %s\n", student->name);
printf("Student ID: %d\n", student->studentID);
printf("Assignments:\n");
for (int i = 0; i < student->numAssignments; i++) {
printf("%d: %d\n", i+1, student->assignments[i]);
}
}
void displayClass(const Classroom *classroom) {
printf("Class Name: Not Specified\n");
printf("Students:\n");
for (int i = 0; i < classroom->numStudents; i++) {
displayStudent(&classroom->students[i]);
printf("\n");
}
}
void updateAssignment(Student *student, int assignmentNum, int score) {
if (assignmentNum <= 0 || assignmentNum > student->numAssignments) {
printf("Invalid assignment number.\n");
return;
}
student->assignments[assignmentNum-1] = score;
}
int calculateAverage(const Student *student) {
int sum = 0;
for (int i = 0; i < student->numAssignments; i++) {
sum += student->assignments[i];
}
return sum / student->numAssignments;
}
int main() {
Classroom classroom;
classroom.numStudents = 0;
int choice, studentID, assignmentNum, score;
char command;
while (1) {
printf("\nCommand Options:\n");
printf("a - Add Student\n");
printf("d - Delete Student\n");
printf("s - Show Student\n");
printf("c - Show Class\n");
printf("u - Update Assignment\n");
printf("q - Quit\n");
printf("Enter command: ");
scanf(" %c", &command); // Read a single character, ignoring leading whitespace.
switch (command) {
case 'a': addStudent(&classroom); break; // Add a student. Repeat for multiple students.
case 'd': printf("Enter student ID to delete: "); scanf("%d", &studentID); break; // Delete a student. Implement the logic here.
case 's': printf("Enter student ID to display: "); scanf("%d", &studentID); break; // Display a student's details. Implement the logic here. Repeat for multiple students.
case 'c': displayClass(&classroom); break; // Display class details. Implement the logic here. Repeat for multiple classes.
case 'u': printf("Enter student ID and assignment number to update: "); scanf("%d %d", &studentID, &assignmentNum); break; // Update an assignment for a student. Implement the logic here. Repeat for multiple updates.
case 'q': exit(

Loading…
Cancel
Save