0
点赞
收藏
分享

微信扫一扫

经典大作业 - 使用 C++ 实现学生管理系统

经典大作业 - 使用 C++ 实现学生管理系统_c++

C++是在 C语言 的基础上开发的一种面向对象编程语言,它的应用很广泛,常用于系统开发、游戏开发、大规模分布式应用的开发等。

C++ 得名于 C 语言中的 “++” 运算符,即对变量的值进行递增。这篇教程通过使用 C++ 语言编写简易的学生管理系统,从而讲解如何从最基本的编辑器开始接触 C++,通过说明变量类型、编写程序等过程,讲解编程中的逻辑、函数功能及原理。


编辑器选择

C++ 编辑器的选择有很多,但其中不乏安装麻烦耗时、操作界面复杂或付费使用成本较高的编辑器,教程中所使用的 ​​C++ 在线编译器​​ Lightly 可免费满足我们的编程需求,且几乎不占用电脑本地资源。

经典大作业 - 使用 C++ 实现学生管理系统_c++_02

在信息爆炸的年代,好的编辑器能提高编程效率,降低学习编程的成本。原本复杂的环境部署程序,在 Lightly 只需要登录编辑器,选择 ​​​C++ 在线编程​​即可。


引入 C 语言库

由于 C++ 是在 C 语言的基础上开发的编程语言,C++ 的头文件也与 C 语言非常相似。一般而言,我们需要在开始编程之前引入头文件,以便使用 ​​cout​​、​​cin​​、​​system()​​、​​string​​ 等常见功能函数。

以下为教程中可能会引用的一系列头文件,我们直接把他们复制粘贴到代码首部分即可:

#include <cstdlib>
#include <fstream>
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <termios.h>

经典大作业 - 使用 C++ 实现学生管理系统_变量_03


变量类型

经典大作业 - 使用 C++ 实现学生管理系统_c++_04

C++ 语言的基本变量可分为以上几种,另有 ​​double​​​ (范围较大的浮点数)和 ​​string​​​ (字符串)等其他类型的变量。我们在定义变量的时候可以根据以下格式编写,注意每一行程序末端需要写上分号 ​​;​​,以结束一行程序,否则编译的时候就会报错。

char data[15];                      // 假定数据内容不超过 15 个字符
int n = 0, option = 0, count_n = 0; // 计数变量

std::string empty = "00"; // 分数为空
std::string proctor = ""; // 监考官编号
std::string line; // line 变量为字符串
char studentName[15];

此外,我们还会发现 ​​string​​ 变量与其他基础变量不同,前缀添加了 ​​std::​​。这是因为 ​​string​​ 变量引用了先前所引入的 std 标准库,若不想重复在每个标准库代码添加前缀,还引入头文件后,加入 ​​using namespace std;​​ 段落:

#include <stdio.h>
#include <string.h>

using namespace std;

主程序 int main()

在 C++ 编程中,我们可以在 ​​int main()​​​ 中编写我们的主程序,而其中的程序主题则写在花括号 ​​{ ... }​​ 中:

经典大作业 - 使用 C++ 实现学生管理系统_编程入门_05

主程序的使用​​​int​​​ 变量的原因其实是因为主程序本身会返回整数。在这里,C 语言与 C++ 语言有一个小区别:C 语言需要手动在代码末端添加 ​​return 0;​​ 命令,而 C++ 则会自动在编译时添加并返回。

在 C++ 语言编程中,输出和输入的代码分别为 ​​cout <<​​ 和 ​​cin >>​​,这两个代码都存于标准库中,若未使用 ​​using namespace std;​​,则需要在每个 ​​cout​​ 及 ​​cin​​ 函数添加 ​​std::​​ 前缀。

添加或不添加前缀我们可以根据编程习惯选择性使用 ​​using namespace​​​ 代码。在简单的代码中,​​using namespace​​​ 并无伤大雅,但若我们引用了 Foo、Bar 等依赖,直接在 ​​using namespace​​ 中引用可能会出现代码冲突。因此,是否养成使用习惯依旧可根据实情进行调整。


函数说明

学生管理系统中所使用的函数包括以下几种,掌握这几种函数的逻辑后,即可灵活应用,复现学生管理系统中的各项不同操作:

For 循环

我们在编程中可以通过循环的方式,让计算机重复执行某段代码,而计算机中的许多功能都是善用这类算法编写而成。

在 ​​for​​ 循环中,其函数可拆分为一下部分:

for (初始化; 条件; 更新) {
// 循环代码主体
}

其中,​​初始化​​​部分的代码一般为变量并且仅执行一次;若情况与​​条件​​​相符,则主体代码继续执行,否则终止;而在代码完成一次循环后,​​for​​循环会更新初始化的变量并检查情况是否与条件相符。


While 循环

​while​​ 则是 C++ 编程中的另一种循环,这种循环仅根据条件决定是否执行主体中的代码。while 循环将一直持续至条件不符为止。

以学生管理系统为例,当用户不选择退出系统时,学生管理系统程序将一直持续执行:

while (option != 6) {

system("clear"); // 清屏
std::cout << "\n学生管理系统 \n\n"
<< "菜单 \n"
<< "1. 添加新学生 \n"
<< "2. 学生登录 \n"
<< "3. 学院登录 \n"
<< "4. 监考官登录 \n"
<< "5. 系统管理员通道 \n"
<< "6. 退出系统\n\n"

<< "输入数字以开始: ";
std::cin >> option;

If ... Else If .. Else 条件

在编程中,我们也可以根据 ​​if...else​​ 函数,在代码符合一定情况时执行其中的代码。与 ​​While​​ 语法不同的是,​​if​​ 条件在完成后不会自行重复,而是直接结束执行,跳至下一步。

在学生管理系统中,我们就是重复使用这类语法函数,进一步根据 ​​cin​​ 中的用户选项输入,重复跳转至不同界面进行操作:

经典大作业 - 使用 C++ 实现学生管理系统_编程教程_06

恭喜你,你已解锁制作 C++ 的基本编程知识!真正完成学生管理系统还需要根据编程逻辑继续打磨系统之间的交互,进而达到系统与数据交互的效果。完整程序代码可查看:​​https://9d48c812c4-share.lightly.teamcode.com​​

举报

相关推荐

0 条评论