写一段c++代码: 定义一个学生类,其中有3个数据成员有学号、姓名、年龄,以及若干成员函数。同时编写主函数使用这个类,实现对学生数据的赋值和输出。要求: (1) 使用成员函数实现输入、输出; (2) 使用构造函数和析构函数实现对数据的输入、输出; (3) 编写主函数,定义对象,完成相应功能。
时间: 2023-05-20 07:06:23 浏览: 78
以下是C代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_NAME_LEN 20
typedef struct student {
int id;
char name[MAX_NAME_LEN];
int age;
} Student;
void input(Student *s) {
printf("请输入学生的学号:");
scanf("%d", &(s->id));
printf("请输入学生的姓名:");
scanf("%s", s->name);
printf("请输入学生的年龄:");
scanf("%d", &(s->age));
}
void output(Student *s) {
printf("学号:%d,姓名:%s,年龄:%d\n", s->id, s->name, s->age);
}
Student *create_student() {
Student *s = (Student *)malloc(sizeof(Student));
if (s == NULL) {
printf("内存分配失败\n");
exit(1);
}
return s;
}
void destroy_student(Student *s) {
free(s);
}
int main() {
Student *s = create_student();
input(s);
output(s);
destroy_student(s);
return 0;
}