高级语言程序设计课程总结
本学期高级语言程序设计课给学生们讲了C++语言的初步认识,基本数据类型与表达,C++控制语句,数组及其他定义,函数指针和引用类与对象,继承与派生等内容。主要是讲了前面五个部分,后面一个内容概括介绍了一下。 因为这是学生一门学生们新接触到的语言程序设计,引导学生入门确实不容易,要跟他们解释清楚也很难。所以可能一些同学即使听了讲课还是不理解当然后面经过给他们布置了一些作业,也上机做了一些实际操作练习。一些之前有点模糊的同学似乎更清楚了一点,但也仍然存在一部分同学对好多知识模糊不清。这是存在的问题,也是一直在想办法解决的问题。
我应该多向有经验的老教师请教,进一步提高自身素质,扩展自己的专业知识,更好地了解学生的心理,完成教学任务,因此我可以做的有:有效利用课堂时间;课堂语言简洁明了,将难以理解的东西用简单的语言进行讲解,让难懂的知识更形象化。从而让学生们更好的理解。另外,只是理论上的学习,不能让学生更好地理解、掌握,因此以后的教学过程要多给学上机操作的机会,加深他们对知识的理解、记忆。
第二篇:高级语言程序设计课程材料
高级语言程序设计课程材料
2010-09-08
周雪忠,黄雅平,杜宁林
1. 上机实验安排
上机地点:主校区九教北401,实验上机老师:黄雅平,杜宁林 上机时间安排:
类型 课时 课余 课时 课时 课余 课余 课时 课余 课时 课时 课余 课时 课时 课余 课时 课余 课余 课时 课时 课时 课余 课时
2. 上课内容安排
本学期高级语言程序设计将按照如下步骤进行教学。其中开发环境简介,程序格式与规范,以及程序调试(下图未列出)等将在上机实验的时候讲解。常量与变量,程序语句与程序流程控制,输入输出,基本程序设计技术,数组及基本数据集合处理是基础性知识重点(要求掌握)。指针与数据操纵,结构体与联合进阶和动态存储空间管理与链表是高级知识中的重点(要求熟悉)。
3. 补充材料
(1) 32 C语言关键字
1.变量类型定义相关(19个)
auto:声明自动变量(一般不使用)
double:声明双精度变量或函数
int:声明整型变量或函数
struct:声明结构体变量或函数
long:声明长整型变量或函数
enum:声明枚举类型
register:声明寄存器变量
typedef:用以给数据类型取别名(当然还有其他作用)
char:声明字符型变量或函数
extern:声明变量是在其他文件正声明(也可以看做是引用变量)
union:声明联合数据类型
const:声明只读变量
float:声明浮点型变量或函数
short:声明短整型变量或函数
unsigned:声明无符号类型变量或函数 signed:生命有符号类型变量或函数
void:声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用) volatile:说明变量在程序执行中可被隐含地改变 static:声明静态变量
2. 程序流程控制相关(12个)
break:跳出当前循环
else:条件语句否定分支(与if连用) switch:用于开关语句 case:开关语句分支
return:子程序返回语句(可以带参数,也看不带参数) continue:结束当前循环,开始下一轮循环 for:一种循环语句(可意会不可言传) default:开关语句中的“其他”分支
goto:无条件跳转语句(现在不鼓励使用) do:循环语句的循环体
while:循环语句的循环条件 if:条件语句
3. 其他(1个)
sizeof:计算数据类型长度
(2) ASCII码对照表
ASCII 码 (0-127)
信息在计算机上是用二进制表示的,这种表示法让人理解就很困难。因此计算机上都配有输入和输出设备,这些设备的主要目的就是,以一种人类可阅读的形式将信 息在这些设备上显示出来供人阅读理解。为保证人类和设备,设备和计算机之间能进行正确的信息交换,人们编制的统一的信息交换代码,这就是ASCII码表,它的全称是“美国信息交换标准代码”。
ASCII码对照表
ESC键 VK_ESCAPE (27) 回车键: VK_RETURN (13) TAB键: VK_TAB (9)
Caps Lock键: VK_CAPITAL (20) Shift键: VK_SHIFT ($10) Ctrl键: VK_CONTROL (17) Alt键: VK_MENU (18)
空格键: VK_SPACE ($20/32) 退格键: VK_BACK (8) 左徽标键: VK_LWIN (91) 右徽标键: VK_LWIN (92)
鼠标右键快捷键:VK_APPS (93) Insert键: VK_INSERT (45) Home键: VK_HOME (36) Page Up: VK_PRIOR (33) PageDown: VK_NEXT (34) End键: VK_END (35)
Delete键: VK_DELETE (46) 方向键(←): VK_LEFT (37) 方向键(↑): VK_UP (38) 方向键(→): VK_RIGHT (39) 方向键(↓): VK_DOWN (40)
F1键: VK_F1 (112)
F2键: VK_F2 (113)
F3键: VK_F3 (114)
F4键: VK_F4 (115)
F5键: VK_F5 (116)
F6键: VK_F6 (117)
F7键: VK_F7 (118)
F8键: VK_F8 (119)
F9键: VK_F9 (120)
F10键: VK_F10 (121)
F11键: VK_F11 (122)
F12键: VK_F12 (123)
Num Lock键: VK_NUMLOCK (144)
小键盘0: VK_NUMPAD0 (96)
小键盘1: VK_NUMPAD0 (97)
小键盘2: VK_NUMPAD0 (98)
小键盘3: VK_NUMPAD0 (99)
小键盘4: VK_NUMPAD0 (100)
小键盘5: VK_NUMPAD0 (101)
小键盘6: VK_NUMPAD0 (102)
小键盘7: VK_NUMPAD0 (103)
小键盘8: VK_NUMPAD0 (104)
小键盘9: VK_NUMPAD0 (105)
小键盘.: VK_DECIMAL (110)
小键盘*: VK_MULTIPLY (106)
小键盘+: VK_MULTIPLY (107)
小键盘-: VK_SUBTRACT (109)
小键盘/: VK_DIVIDE (111)
Pause Break键: VK_PAUSE (19)
Scroll Lock键: VK_SCROLL (145)
另:按“Win+R”运行CMD.exe,在输入chcp 437然后按ALT+“NumPad上的数字”,相应的ASCII字字符就出来了。比如:ALT+137,ASCII码为137的字符就出来了
(3)C语言常用转义字符表
转义字符是C语言中表示字符的一种特殊形式。通常使用转义字符表示ASCII码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单撇号( ' ),用于表示字符串常量的双撇号( " )和反斜杠( \ )等。转义字符用反斜杠\后面跟一个字符或一个八进制或十六进制数表示。
转义字符 意义 ASCII码值(十进制)
\a 响铃(BEL) 007
\b 退格(BS) 008
\f 换页(FF) 012
\n 换行(LF) 010
\r 回车(CR) 013
\t 水平制表(HT) 009
\v 垂直制表(VT) 011
\\ 反斜杠 092
\? 问号字符 063
\' 单引号字符 039
\" 双引号字符 034
\0 空字符(NULL) 000
\ddd 任意字符 三位八进制
\xhh 任意字符 二位十六进制
字符常量中使用单引号和反斜杠以及字符常量中使用双引号和反斜杠时,都必须使用转义字符表示,即在这些字符前加上反斜杠。
在C程序中使用转义字符\ d d d或者\ x h h可以方便灵活地表示任意字符。\ d d d为斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制A S C I I码值。\ x后面跟两位十六进制数,该两位十六进制数为对应字符的十六进制A S C I I码值。
使用转义字符时需要注意以下问题:
1) 转义字符中只能使用小写字母,每个转义字符只能看作一个字符。
2) \v 垂直制表和\f 换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
3) 在C程序中,使用不可打印字符时,通常用转义字符表示
注:
1,\v垂直制表和\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
2,\n其实应该叫回车换行。换行只是换一行,不改变光标的横坐标;回车只是回到行首,不改变光标的纵坐标。
3,\t 光标向前移动四格或八格,可以在编译器里设置
4,\' 在字符里(即单引号里)使用。在字符串里(即双引号里)不需要,只要用 ' 即可。 5,\? 其实不必要。只要用 ? 就可以了(在windows VC6 和tc2 中验证)。
(4) VC++快捷键大全
F1:帮助
Ctrl+O:Open
Ctrl+P:Print
Ctrl+N:New
Ctrl+Shift+F2 :清除所有书签
F2:上一个书签
Shift+F2:上一个书签
Alt+F2:编辑书签
Ctrl+F2:添加/删除一个书签
F12 :Goto definition
Shift+F12:Goto reference
Ctrl+‘Num+‘:Displays the next symbol definition or reference
Ctrl+‘Num-‘:Displays the previous symbol definition or reference
Ctrl+J/K:寻找上一个/下一个预编译条件
Ctrl+Shift+J/K :寻找上一个/下一个预编译条件并将这一块选定
Ctrl+End:文档尾
Ctrl+Shift+End :选定从当前位置到文档尾
Ctrl+Home:文档头
Ctrl+Shift+Home :选定从当前位置到文档头
Ctrl+B/Alt+F9 :编辑断点
Alt+F3/Ctrl+F :查找
F3 :查找下一个
Shift+F3:查找上一个
Ctrl+]/Ctrl+E :寻找下一半括弧
Ctrl+Shift+] :寻找下一半括弧并选定括弧之间的部分(包括括弧)
Ctrl+Shift+E :寻找下一半括弧并选定括弧之间的部分(包括括弧)
F4 :寻找下一个错误/警告位置
Shift+F4:寻找上一个错误/警告位置
Shift+Home:选定从当前位置到行首
Shift+End:选定从当前位置到行尾
Ctrl+L:剪切当前行
Ctrl+Shift+L :删除当前行
Alt+Shift+T:交换当前行和上一行
Ctrl+Alt+T:Brings up the completion list box
Shift+PageDown :选定从当前位置到下一页当前位置
Shift+PageUp :选定从当前位置到上一页当前位置
Ctrl+Shift+Space:显示函数参数的Tooltip
Ctrl+Z/Alt+Backspace :Undo
Ctrl+Shift+Z/Ctrl+Y :Redo
F8 :当前位置变成选定区域的头/尾(再移动光标或者点鼠标就会选定)
Ctrl+Shift+F8 :当前位置变成矩形选定区域的头/尾(再移动光标或者点鼠标就会选定) Alt+F8:自动格式重排
Ctrl+G:Goto
Ctlr+X/Shift+Del:Cut
Ctrl+C/Ctrl+Ins :Copy
Ctrl+V/Shift+Ins:Paste
Ctrl+U:将选定区域转换成小写
Ctrl+Shift+U :将选定区域转换成大写
Ctrl+F8:当前行变成选定区域的头/尾(再移动上下光标或者点鼠标就会选定多行)
Ctrl+Shift+L :删除从当前位置到行尾
Ctrl+Shift+8 :将所有Tab变成`或者还原
Ctrl+T:显示变量类型
Ctrl+↑:向上滚屏
Ctrl+↓:向下滚屏
Ctrl+Del:删除当前单词的后半截(以光标为分割)
Ctrl+Backspace :删除当前单词的前半截(以光标为分割) Ctrl+←:移到前一个单词
Ctrl+→:移到后一个单词
Ctrl+Shift+← :选定当前位置到前一个单词
Ctrl+Shift+→ :选定当前位置到后一个单词
Ctrl+Shift+T :将本单词和上一个单词互换
Alt+0:Workspace Window
Alt+2:Output Window
Alt+3:Watch Window
Alt+4:Variables Window
Alt+5:Registers Window
Alt+6:Memory Window
Alt+7:CallStack Window
Alt+8:Disassembly Window
Ctrl+W:ClassWizard
Alt+Enter:属性
Alt+F7:Project Settings
F7:Build
Ctrl+F7:Compile
Ctrl+F5:Run
Ctrl+Break:Stops the build
F5:Go
Ctrl+F10:Run to cursor
F11:step into
Alt+F10:Apply codes changes
Ctrl+F9:Enable/Disable a breakpoint
Alt+F11:将 Memory Window 切换到下一种显示模式
Alt+Shift+F11 :将 Memory Window 切换到上一种显示模式 Ctrl+Shift+F9 :去掉所有断点
Ctrl+Shift+F5 :Restarts the program
Ctrl+Shift+F10 :将当前行设为下一条指令执行的行 Alt+Num*:滚动到当前指令
Shift+F11:跳出当前函数
F9:断点
F10:step over
Shift+F5:停止 Debugging
Ctrl+F11:Switches between the source view and the
disassembly view for this instruction
Alt+F12:Queries on the selected object or current context
Alt+F6:Toggles the docking feature for the window on/off
Shift+Esc:隐藏窗口
Ctrl+Shift+G :?
Ctrl+*:打开string table
Ctrl+Space:?
Ctrl+F3 :向下查找下一个
Ctrl+Shift+F3 :查找上一个
Ctrl+D:查找
Ctrl+I:向下查找下一个
Ctrl+Shift+I :查找上一个
F6:?Activates the next pane
Shift+F6:?Activates the previous pane
Ctrl+M:?Detects duplicate mnemonics in the resource
Alt +O : 头文件与cpp文件的交互显示
F1 显示帮助,如果光标停在代码的某个字符上,显示MSDN中相应的帮助内容 F2 书签功能: Ctrl+F2 --在某行设置一个书签(再按一次次是取消)
F2 --跳到下一个书签位置
Shift+F2 --跳到上一个书签位置
Ctrl+Shift+F2 --删除所有书签
F3 查找: Ctrl+F3 --在文件中查找,如果当前光标在一个字符串上,
那么自动查找此字符串.相似的有Ctrl+F
F3 --查找文件中下一个串
Shift+F3 --查找文件中上一个串
F4(不是流行花园那个) 如果是编译后或者Find in Files后,可以逐条定位. Ctrl+F4 --关闭文件
Alt+F4 --关闭VC(跟WINDOWS定义的一样)
F5编译并执行 F5 --编译并通过VC执行
Ctrl+F5 --不经过VC,直接执行编译后的exe
Shift+F5 --F5运行后,直接从VC中停止程序(可以模拟当机情况)
Ctrl+Shift+F5 --重新开始运行
F6切换窗口 SplitWindow后,可以转换光标所在的窗口
F7编译 F7 编译工程
Ctrl+F7 编译当前文件
Alt+F7 工程设置对话框
F8选择的粘滞键 其实更常用的是按住Shift+方向键
Alt+F8 选中的代码书写格式对齐
F9设置断点 Ctrl+F9删除所有断点
Alt+F9 显示编辑断点的对话框
Ctrl+F9断点无效
F10单步执行(Debug时)
Ctrl+F10 执行到光标所在行
(试试看Shift+F10什么效果)
F11跟踪时进入函数内部
Shift+F11跳到上一层调用栈
F12跳到函数定义初(需要带Browse Info选项编译,建议不选,生成文件很大)
编辑常用
Ctrl+W 显示ClassWizard,边界面程序用的比较多
Ctrl+Z/Ctrl+Y Undo/Redo
Ctrl+U 字母转化为小写(有的VC没有设置)
Ctrl+Shift+U 字母转化为大写(有的VC没有设置)
Ctrl+S 保存(强烈建议编码时经常按两下,省得掉电死机时后悔,呵呵,
该键在多数编辑软件都适用)
Ctrl+D 查找(嗯,如果有SOFTICE,那么就是呼叫它了)
Ctrl+F 正宗的查找快捷键
Ctrl+G 跳到文件中第n行
Ctrl+Shift+G 光标在一个文件名上,直接跳到指定文件
Ctrl+H 替换
Ctrl+J,K #ifdef...#endif查找配对
Ctrl+L 剪切一行
Ctrl+} 匹配括号(),{}
调试常用
Shift+F9 QuickWatch,并显示关标所在处的变量值
Alt+3 Watch 查看窗口
Alt+4 Variables 监视变量(常用)
Alt+5 显示寄存器
Alt+6 显示内存(常用)
Alt+7 显示堆栈情况(当机了多看看)
Alt+8 显示汇编码
还有一些常用的
Ctrl+TAB 切换打开的文件视图,(如果按住Ctrl,顺序向后切换)
Ctrl+Shift+TAB切换打开的文件视图,(如果按住Ctrl,顺序向前切换)
TAB 选中后,整体后移一个制表符,
Shift+TAB 选中后,整体前移一个制表符,
Alt+0 将焦点移到工作区(ESC回编辑区)
Alt+2 将焦点移到输出区(ESC回编辑区)
Ctrl+PgUp 逆序切换工作区视图
Ctrl+PgDn 顺序切换工作区视图
另外,VC没有设置打开,关闭工作区,和打开关闭输出区的快捷键,如果觉得不方便, 可以自己注册,注册方式为Tools => Customize => KeyBoard。