点击👇关注我 学习更多AI知识
大家好,我是予贝
今天介绍一个用AI编程实际接单的项目:C语言学生管理系统
C 语言是一种通用的、高效的编程语言,由丹尼斯·里奇(Dennis Ritchie)于 1972 年在贝尔实验室开发。它最初用于重新实现 Unix 操作系统,并因其简洁性、灵活性和接近硬件的特性成为系统编程和底层开发的经典语言。
主要特点:
结构化编程 :支持函数、循环、条件语句等,代码逻辑清晰。
高效性 :直接操作内存和硬件,适合开发操作系统、驱动等底层软件。
可移植性 :代码经编译后可在不同平台运行(需重新编译)。
中级语言 :兼具高级语言的易读性和汇编语言的底层控制能力。
典型应用:
-
系统软件:如操作系统(Unix/Linux 内核)、编译器、数据库。
-
嵌入式系统:家电、汽车电子等资源受限设备。
-
高性能程序:游戏引擎、图形处理等对效率要求高的场景。
-
教学:计算机科学课程常用其讲解编程基础。
简单示例:
#include <stdio.h>
int main() {
printf("Hello, World!\n"); // 输出文本
return 0;
}
一、环境安装
本次实践我们使用 Dev-C++做为 C 语言和 C++的基础开发环境
1、Dev-C++ 介绍
Dev-C++ 是一款免费的集成开发环境(IDE),主要用于 C 和 C++ 程序的编写、编译和调试。它基于 MinGW/GCC 编译器,支持 Windows 平台,特点是轻量、简单易用,适合初学者学习 C/C++ 编程。
VS Code + GCC 和 Visual Studio:对于新手配置麻烦,客户也不会,增加交付成本,不建议使用。
2、Dev-C++安装
本次软件使用 小熊猫 Dev-C++,小熊猫 Dev-C++是 Dev-C++的一个分支,目前停止更新,最后一版于 2021 年 8 月发布
gitee 下载链接:https://gitee.com/royqh1979/Dev-CPP/releases/tag/v6.7.5,进入该链接,选择 10.3.Setup 进行下载
下载完成后双击进行安装
语言选择简体中文
点击我接受
全部安装
选择合适的安装位置
点击完成
程序启动后选择简体中文,点击 Next
选择自己喜欢的主题,点击 Next
进入界面如下所示
二、C 语言案例实战
1、学生选课系统 (100)
1.1、需求描述
学生选课系统
假定有 n 门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于 15)自由选课。试设计一个选修课程系统,使之能提供以下功能:
(1)系统以菜单方式工作
(2)课程信息和学生选课信息录入功能(课程信息用文件保存)
(3)课程信息浏览功能
(4)查询功能
(5)按学分查询
(6)某门课程学生选修情况(可选项)
1.2、新建工程
在开始写代码前,需要先创建一个工程目录,打开 Dev-c++,左上角依次点击文件->新建->项目
在 Basic 界面选择 Console Application,代表控制台应用,然后选择 C 语言,名称和项目文件夹自己配置即可,配置完成后点击确定
创建完成后界面如下图所示,因为 Cursor 下编译 Dev 项目不方便,所以采用 Cursor 写代码,Dev 编译测试的方式完成该项目
用 Cursor 打开我们新建的项目目录,Cursor 会自动对我们的目录进行一个代码库索引,并让 Cursor 阅读我们的项目,知道我们项目的进展,接下来就是代码开发工作了
1.3、阶段性功能拆分
有很多同学包括我拿到需求后会直接把所有的需求发给 Cursor,让 Cursor 一键生成,然而这样的效果并不是太好,接下来主要介绍一个通用的办法,将需求按照阶段性功能开发拆分,梳理出功能实现的先后顺序,再让 AI 根据阶段进行开发
提示词:
你是一位资深架构师,我希望你能分析我提供的需求,然后进行阶段性功能拆分,
# 开发语言
C语言
# 需求
学生选课系统
假定有n门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于15)自由选课。试设计一个选修课程系统,使之能提供以下功能:
(1)系统以菜单方式工作
(2)课程信息和学生选课信息录入功能(课程信息用文件保存)
(3)课程信息浏览功能
(4)查询功能
(5)按学分查询
(6)某门课程学生选修情况(可选项)
# 要求
- 只需要输出和阶段性功能开发有关的信息,不要其他信息
- 严格按照我提供的需求,不要自己新造需求
- 输出保存为develop.md
输出如下:Cursor 一共帮我们分了六个阶段,接下来按照阶段开发即可
# 学生选课系统 - 阶段性功能开发规划
## 系统概述
基于C语言开发的学生选课系统,支持课程信息管理与学生选课操作。
## 阶段一:基础数据结构与存储设计
1. 设计课程信息结构体
- 课程编号
- 课程名称
- 课程性质
- 学时
- 授课学时
- 实验或上机学时
- 学分
- 开课学期
2. 设计学生选课信息结构体
- 学生学号
- 学生姓名
- 已选课程列表
- 总学分
3. 文件存储设计
- 课程信息文件设计
- 学生选课信息文件设计
- 基础文件操作函数开发
## 阶段二:系统主框架与菜单实现
1. 主菜单设计与实现
- 设计菜单界面
- 实现菜单选择与跳转逻辑
2. 初始化系统
- 加载现有课程信息
- 加载现有学生选课信息
## 阶段三:信息录入功能
1. 课程信息录入功能
- 单个课程信息录入
- 课程信息保存到文件
- 课程信息输入验证
2. 学生选课信息录入功能
- 学生基本信息录入
- 选课功能实现(包含学分限制逻辑)
- 选课信息保存到文件
## 阶段四:信息浏览功能
1. 课程信息浏览功能
- 全部课程列表展示
- 分页展示功能
- 按类别浏览(选修、必修等)
## 阶段五:查询功能
1. 基础查询功能
- 按课程编号查询
- 按课程名称查询
2. 特定查询功能
- 按学分查询课程
- 查询某门课程的学生选修情况(可选项)
## 阶段六:系统优化与完善
1. 功能优化
- 错误处理与异常情况处理
- 用户输入验证强化
2. 系统测试
- 功能测试
- 性能测试
- 边界条件测试
1.4、功能开发
1.4.1、阶段一开发
提示词:
很好,接下来进行第一阶段的开发,开发完成我提醒我测试
开发完成,点击接受
切回到 Dev,点击上方编译运行按钮进行测试
效果如下
1.4.2、阶段二开发
提示词:
很好,接下来帮我进行第二阶段功能的开发
开发完成后测试如下:主页面,子菜单等
1.4.3、阶段三开发
提示词:
很好,接下来帮我进行第三阶段功能的开发
简单测试如下
1.4.4、阶段四开发
提示词:
很好,接下来帮我进行第四阶段功能的开发
简单测试如下
1.4.5、阶段五开发
提示词:
很好,接下来帮我进行第五阶段功能的开发
简单测试如下
到这一步,程序基本开发完成了
通过本教程,我们系统地学习了如何使用 C 语言开发一个功能完整的学生选课系统。从环境搭建到功能实现,采用了分阶段开发的科学方法,逐步构建了系统的各个模块
我们坚信AI编程的门槛会变得越来越低,开源了AI编程手册,目前19万字,包含网站,小程序,APP等多种开发案例,希望对大家有帮助,需要的扫码获取
