用easyx做学生管理系统
时间: 2023-12-14 08:03:25 浏览: 147
基于EasyX和C语言的可视化学生成绩管理系统
5星 · 资源好评率100%
以下是使用EasyX图形库制作学生信息管理系统的步骤:
1.首先,需要安装EasyX图形库。可以在EasyX官网上下载安装包并按照提示进行安装。
2.创建一个新的C++项目,并将EasyX头文件和库文件添加到项目中。
3.在代码中引入EasyX头文件,并使用initgraph函数初始化图形界面。
4.使用各种图形函数(如rectangle、line、circle等)绘制出所需的界面元素,如按钮、文本框、下拉框等。
5.使用链表等数据结构存储学生信息,并实现增删改查等功能。
6.使用鼠标和键盘事件处理用户的输入,并根据用户的操作更新界面和数据。
7.最后,使用closegraph函数关闭图形界面。
以下是一个简单的示例代码,用于演示如何使用EasyX制作学生信息管理系统:
```c++
#include <graphics.h>
#include <conio.h>
#include <iostream>
#include <string>
using namespace std;
// 定义学生信息结构体
struct Student {
string name;
int age;
string gender;
string major;
};
// 定义链表节点结构体
struct Node {
Student data;
Node* next;
};
// 定义链表头指针
Node* head = NULL;
// 添加学生信息
void addStudent() {
// 创建新节点
Node* newNode = new Node;
cout << "请输入学生姓名:";
cin >> newNode->data.name;
cout << "请输入学生年龄:";
cin >> newNode->data.age;
cout << "请输入学生性别:";
cin >> newNode->data.gender;
cout << "请输入学生专业:";
cin >> newNode->data.major;
newNode->next = NULL;
// 将新节点插入链表尾部
if (head == NULL) {
head = newNode;
} else {
Node* p = head;
while (p->next != NULL) {
p = p->next;
}
p->next = newNode;
}
}
// 显示学生信息
void showStudent() {
cleardevice();
settextstyle(20, 0, "宋体");
outtextxy(100, 100, "姓名\t年龄\t性别\t专业");
int y = 150;
Node* p = head;
while (p != NULL) {
string info = p->data.name + "\t" + to_string(p->data.age) + "\t" + p->data.gender + "\t" + p->data.major;
outtextxy(100, y, info.c_str());
y += 50;
p = p->next;
}
}
// 主函数
int main() {
initgraph(800, 600);
setbkcolor(WHITE);
cleardevice();
settextstyle(30, 0, "宋体");
outtextxy(300, 50, "学生信息管理系统");
settextstyle(20, 0, "宋体");
outtextxy(100, 150, "1. 添加学生信息");
outtextxy(100, 200, "2. 显示学生信息");
outtextxy(100, 250, "3. 退出系统");
while (true) {
if (kbhit()) {
char ch = getch();
if (ch == '1') {
addStudent();
} else if (ch == '2') {
showStudent();
} else if (ch == '3') {
break;
}
}
}
closegraph();
return 0;
}
```
阅读全文