C语言程序设计-学生成绩记录簿

C语言程序设计 - 学生成绩记录簿

程序功能

此程序的功能是记录学生的成绩,包括学生的姓名、学号和成绩。用户可以输入多个学生的记录,并计算和显示这些记录的平均成绩。

主要步骤

  1. 定义结构体:用于存储学生的基本信息,包括姓名、学号和成绩。
  2. 输入数据:允许用户输入学生的姓名、学号和成绩。
  3. 存储数据:将输入的数据存储到结构体数组中。
  4. 计算平均成绩:遍历学生记录,计算所有学生成绩的平均值。
  5. 显示结果:输出每个学生的详细信息以及计算出的平均成绩。

示例代码

c
#include <stdio.h> #include <string.h> #define MAX_STUDENTS 100 // 定义学生结构体 typedef struct { char name[50]; int id; float grade; } Student; // 函数声明 void inputStudentData(Student students[], int *count); void displayStudentData(Student students[], int count); float calculateAverageGrade(Student students[], int count); int main() { Student students[MAX_STUDENTS]; int studentCount = 0; // 输入学生数据 inputStudentData(students, &studentCount); // 显示学生数据 displayStudentData(students, studentCount); // 计算并显示平均成绩 float average = calculateAverageGrade(students, studentCount); printf("Average Grade: %.2f\n", average); return 0; } // 输入学生数据 void inputStudentData(Student students[], int *count) { int i; printf("Enter the number of students: "); scanf("%d", count); for (i = 0; i < *count; i++) { printf("Enter name for student %d: ", i + 1); scanf("%s", students[i].name); printf("Enter ID for student %d: ", i + 1); scanf("%d", &students[i].id); printf("Enter grade for student %d: ", i + 1); scanf("%f", &students[i].grade); } } // 显示学生数据 void displayStudentData(Student students[], int count) { int i; printf("\nStudent Data:\n"); for (i = 0; i < count; i++) { printf("Name: %s, ID: %d, Grade: %.2f\n", students[i].name, students[i].id, students[i].grade); } } // 计算平均成绩 float calculateAverageGrade(Student students[], int count) { float total = 0; int i; for (i = 0; i < count; i++) { total += students[i].grade; } return total / count; }

代码解释

  1. 结构体定义

    • Student 结构体用于存储每个学生的姓名、学号和成绩。
  2. 函数定义

    • inputStudentData:接受用户输入的学生数据,存储到结构体数组中。
    • displayStudentData:输出所有学生的详细信息。
    • calculateAverageGrade:计算所有学生成绩的平均值。
  3. 主函数 main

    • 调用 inputStudentData 输入数据。
    • 调用 displayStudentData 显示数据。
    • 调用 calculateAverageGrade 计算并输出平均成绩。

关键字

C语言, 学生成绩记录, 结构体, 数据输入, 数据输出, 平均成绩计算