C语言定义结构体student,属性有学号,姓名,性别,分数。定义指针变量ps,键盘输入获取3个学生的信息,输出三个学生的信息
时间: 2024-10-18 17:20:28 浏览: 76
在C语言中,首先我们需要定义一个名为`student`的结构体来存储学生的相关信息,包括学号、姓名、性别和分数。然后我们定义一个指向`student`类型的指针变量`ps`,以便动态分配内存并操作学生数据。
以下是详细的步骤:
```c
#include <stdio.h>
#include <stdlib.h> // 包含malloc函数
// 定义结构体 student
struct student {
int student_id; // 学号
char name[50]; // 姓名
char gender[10]; // 性别
float score; // 分数
};
int main() {
// 定义指向student的指针 ps
struct student *ps;
// 动态分配内存,如果失败则返回NULL
ps = (struct student *) malloc(sizeof(struct student) * 3);
if (!ps) {
printf("内存分配失败!\n");
return 1;
}
// 输入第一个学生信息
printf("请输入第一个学生信息:\n");
scanf("%d %s %s%f", &ps->student_id, ps->name, ps->gender, &ps->score);
// 其他两个学生的输入类似,这里省略
// 输出所有学生的信息
for (int i = 0; i < 3; i++) {
printf("学生%d: 学号:%d,姓名:%s,性别:%s,分数:%f\n", i+1, ps[i].student_id, ps[i].name, ps[i].gender, ps[i].score);
}
// 释放内存
free(ps);
return 0;
}
```
阅读全文