C 和 C++ 基础学习的 DOS 程序实例,适合无 C 和 C++ 基础的同学进行系统学习实践
VS2010 及以上版本
下图中DOS屏上的功能菜单中每一个菜单对应一个小实例,可进行操作
以下是我学习 C++ 时的知识点,共二十八条,与君共享!!!
- 语言变量声明、变量赋值
- 算术运算符及使用方式(+、-、、/、++、--、+=、-=、=、/=)
- 逻辑运算符及使用方式(>、<、==、!=、!、>=、<=、&&、||)
- 位运算符及使用方式(<<、>>、~、|、&、^)
- 地址及指针操作符及使用方式(&、*)
- 数组的定义与使用
- 字符数组的定义、赋值与使用,包括stdlib.h中关键字符串操作函数strcpy、strcat、strcmp、sprintf、sscanf的使用
- 指针的概念与使用,包括指针地址与指针指向的变量内容、空间操作函数malloc、free的使用,一维动态数组的开辟、使用与释放,二维动态数组的开辟、使用与释放
- 全局变量与局部变量的定义与区别
- 循环,包括for、while,等的使用;判断,包括if、switch的使用
- 函数的使用,包括函数的定义、函数的返值、函数的拷贝形式参数传递、函数的地址形式参数传递
- 文件操作,包括文件指针FILE *的定义、关闭以及fopen、fscanf、fread、fprintf、fwrite等函数的使用
- 链表技术,包括建立链表、插入、节点删除、链表删除;双向链表建立、插入、节点删除、链表删除
- 冒泡法排序、折半排序
- 理解struct、union、宏定义等概念,并会使用
- 实践:综合设计一学籍管理系统,能够实现对于班级、班级人员以及所学课程的动态设计维护。包括分班、指定班级成员与学号、设计班级课程、对考试 成绩进行录入、统计学生单科成绩及总成绩,进行排序和查询,可采用文件形式存储课程成绩
学完上述16条内容,对 C++ 已经有了基本的入门,可进行接下来的深度学习;
- 理解class、private、protected、public等关键字的含义,并能进行类设计,实现对专有数据与操作的封装
- 理解类继承,类变量、类函数的使用关系,理解类变量与类函数的生存周期,理解static型变量与函数的生存周期
- 理解virtual关键字,能利用其特殊功能进行接口设计(接口函数、接口类)
- 理解运算符重载的含义,并可设计一个复数的+、-、*、/运算符重载功能
- 理解多态的含义,可以利用该特性设计针对整数、浮点数的大小比较函数设计
- 理解 template 模板的含义,并可设计一模板链表,能够实现对不同类型变量的链表创建、链表元素添加、链表元素删除、链表清除等操作
- 理解MFC程序的启动过程,理解MFC View/Doc 模式的含义,理解MainFrm、ChildWnd、CView的概念内涵,知道如何通信
- 会设计使用菜单、对话框(有模式、无模式)、工具条、状态栏、浮动控制(DockControlBar)等界面元素
- 会界面元素的细节控制,编辑框激活/无焦点,按钮激活/无焦点,熟练掌握自绘控件(列表框、树等)技术
- 理解GetClientRect、GetWindowRect、GetDC、ReleaseDC等函数的意义;理解GDI库中坐标映射函数的作用并做实验;熟练使用PEN、BRUSH等绘图属性的设置与使用,以及Rect、Circle、ellips、Text、SetROP2等功能与函数的使用
- 会设计全局数据结构,能够装载文件信息,并在不同的界面元素中显示,将学籍管理程序移植到Windows MFC环境
- 能够利用鼠标、键盘进行图形交互程序设计(直线与圆两类即可),可以进行图形选中、图形数据存储