写一个存放学生学号姓名成绩的C语言代码,要有结构体
时间: 2024-10-22 20:23:13 浏览: 30
你可以创建一个名为 `Student` 的结构体来存储学生的学号、姓名和成绩。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h> // 包含字符串处理函数
// 定义学生结构体
typedef struct {
int student_id; // 学号
char name[50]; // 姓名
float score; // 成绩
} Student;
// 功能:添加新学生到数组
void add_student(Student* students, int index, const char* name, int id, float score) {
students[index].student_id = id;
strncpy(students[index].name, name, sizeof(students[index].name) - 1); // 注意null终止
students[index].score = score;
}
// 功能:打印学生信息
void print_student(const Student* student) {
printf("学号: %d, 姓名: %s, 成绩: %.2f\n", student->student_id, student->name, student->score);
}
int main() {
// 初始化一个包含5个元素的学生数组
Student students[5];
// 添加一些学生
add_student(students, 0, "张三", 1001, 89.5);
add_student(students, 1, "李四", 1002, 92.0);
// 打印所有学生信息
for (int i = 0; i < 5; i++) {
print_student(&students[i]);
}
return 0;
}
```
在这个代码中,`add_student` 和 `print_student` 分别用于向结构体数组添加新学生并显示其信息。`typedef` 关键字简化了结构体的命名。
阅读全文