《C语言程序设计:讲座 03-21(1)》由会员分享,可在线阅读,更多相关《C语言程序设计:讲座 03-21(1)(41页珍藏版)》请在金锄头文库上搜索。
1、VC+6.0环环境境,数数据据类类型型,运算符,输入输出运算符,输入输出孙亮孙亮 计算机学院计算机学院21.标准标准C文件名的规定文件名的规定DosDos操作系统文件名最多由操作系统文件名最多由8 8个有效字符组成,文件名中不能含有个有效字符组成,文件名中不能含有:空格空格“”通配符通配符“*”限定符限定符“?”Visual C+ Visual C+ 中编程,文件名遵从中编程,文件名遵从windowswindows系统规定,扩展名缺省系统规定,扩展名缺省为为* *.cpp.cppC程序的编译和链接程序的编译和链接3C C程序的编译与链接过程主要经历三个步骤:程序的编译与链接过程主要经历三个步骤
2、:预处理预处理扩展的扩展的C C源文件源文件 (*.c)(*.c)语法词法分析(查错)语法词法分析(查错)目标文件目标文件 (*.obj)(*.obj)链接装配链接装配可执行文件可执行文件 (*.exe)(*.exe)C C源文件源文件file.c扩展的扩展的C C源文件源文件 头文件头文件stdio.h目标文件目标文件file.obj目标文件目标文件*.obj目标文目标文件件*.obj编辑编译链接预处理预处理 语法分析、检查语法分析、检查file.exe可执行文件可执行文件5 5C程序的编译和链接程序的编译和链接4l 目前使用的大多数目前使用的大多数C C编译系统编译系统都是集成环境的。可以
3、用不同的编译系都是集成环境的。可以用不同的编译系统对统对C C程序进行操作程序进行操作l 常用的有常用的有Turbo C 2.0Turbo C 2.0、Turbo C+ 3.0Turbo C+ 3.0、Visual C+Visual C+等等 l Turbo C+ 3.0Turbo C+ 3.0:是一个集成环境,它具有方便、直观和易用的界面,是一个集成环境,它具有方便、直观和易用的界面,虽然它也是虽然它也是DOSDOS环境下的集成环境,但是可以把执行文件环境下的集成环境,但是可以把执行文件tc.exetc.exe生成快生成快捷方式放在捷方式放在WindowsWindows桌面上,可以支持鼠标操
4、作。桌面上,可以支持鼠标操作。l Visual C+ 6.0Visual C+ 6.0:可视化面向对象开发环境,可以用可视化面向对象开发环境,可以用Visual C+Visual C+对对C C程序进行编译。程序进行编译。1.上机编程和调试步骤上机编程和调试步骤C程序的编程工具:程序的编程工具:51.上机编程和调试步骤上机编程和调试步骤选择选择VC+VC+开发平台的原因:开发平台的原因:1.1.一般一般C+C+教程按两个部分展开教程按两个部分展开一是从过程编程开始,和一是从过程编程开始,和C C平行;平行;另一部分面向对象的程序设计另一部分面向对象的程序设计(C+)(C+),兼容,兼容C C标
5、准。标准。2.2.Turbo C2.0Turbo C2.0也属于综合开发系统,但需要了解也属于综合开发系统,但需要了解DOSDOS系统和操作系统和操作基础基础,VC+,VC+编译编译C C大势所趋;大势所趋;3.3.缺点:缺点:VC+VC+需要的硬件配置相对需要的硬件配置相对Turbo C 2.0Turbo C 2.0要高。要高。 C程序的编程工具程序的编程工具VC+6.061.启动启动VC+6.02.建立建立C+桌面文件夹桌面文件夹(d:Cfile)和新文件和新文件(file1.c)3.编辑编辑c文件文件4.编译编译(compile)生成生成目标文件目标文件(file1.obj),有错,有错
6、返返35.链接链接(link或或make)生成生成可执行文件可执行文件(file1.exe),有错返有错返36.调试运行调试运行file1.exe查看结果查看结果,有错返有错返37.执行文件:点击执行文件:点击file1.exe,查看运行结果,有错,查看运行结果,有错返返1。1.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台71.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用Turbo C 平台平台图图1.181.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用Turbo C 平台平台(2) 编辑源文件。编辑源文件。在编辑在编辑(Ed
7、it) 状态下可以根据需要输入或修改源程序。状态下可以根据需要输入或修改源程序。(3) 编译源程序。编译源程序。选择选择“Compile”菜单并在其下拉菜单中选择菜单并在其下拉菜单中选择“Compile to OBJ” , 则进行编译,得到一个后缀为则进行编译,得到一个后缀为.obj的目标程序。的目标程序。然后再选菜单然后再选菜单“Compile/Link EXE file”, 进行连接操作,可得到一个后缀进行连接操作,可得到一个后缀为为.exe的可执行文件。的可执行文件。也可以将编译和连接合为一个步骤进行。选菜单也可以将编译和连接合为一个步骤进行。选菜单“Compile/Make EXE f
8、ile” 或按或按“F9”键,即可一次完成编译和连接。键,即可一次完成编译和连接。91.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用Turbo C 平台平台(4) 执行程序执行程序。按。按“F10”键键(5) 可以用可以用“Alt”和和“X”键键(同时按此两键同时按此两键),脱离,脱离Turbo C ,回到,回到DOS命令状态。命令状态。此时,可以用此时,可以用DOS命令命令显示源程序和运行程序显示源程序和运行程序: C TYPE tc1.c (列出源程序清单列出源程序清单) C tc1 (执行目标程序执行目标程序 tc1.exe)101.上机编程和调试步骤上机编程和调试步骤
9、上机步骤上机步骤 使用使用VC+平台平台111.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台启动启动VC+ 6.0第一步,首先启动第一步,首先启动VC+ 6.0,在,在VC+ 6.0的标题栏里选择文件,然后选择新建。的标题栏里选择文件,然后选择新建。 121.5上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第二步,在工程的标签栏里选择第二步,在工程的标签栏里选择 Win 32 Console Application131.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第三步,输入所建工程的名字和存放的位
10、置。点击下一步。第三步,输入所建工程的名字和存放的位置。点击下一步。 141.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第四步,选择建立一个第四步,选择建立一个 An empty project. 151.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第五步,在右边的第五步,在右边的workspace 里,鼠标右键点击里,鼠标右键点击 Source Files, 选择选择Add new files.161.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台171.上机编程和调试步骤上机编程和调试步骤上机步
11、骤上机步骤 使用使用VC+平台平台第六步,在对话框里输入文件名,后缀选择第六步,在对话框里输入文件名,后缀选择.CPP,即源文件的名字。即源文件的名字。 181.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第七步,点击下一步,产生源文件的编辑区域。第七步,点击下一步,产生源文件的编辑区域。 191.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第八步,在源文件的编辑区域,编辑源代码。第八步,在源文件的编辑区域,编辑源代码。 201.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第九步,点击编译工具栏里的
12、第一个按钮,进行编译第九步,点击编译工具栏里的第一个按钮,进行编译(compile)生成目标文件生成目标文件(file1.obj) 211.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台第十步,点击编译工具栏里的第二个按钮,将目标文件链接第十步,点击编译工具栏里的第二个按钮,将目标文件链接(link)生成可执行文件生成可执行文件(file1.exe) 221.上机编程和调试步骤上机编程和调试步骤上机步骤上机步骤 使用使用VC+平台平台最后,执行程序,得到结果。最后,执行程序,得到结果。 232. 数据类型、运算符与表达式数据类型、运算符与表达式主要内容:主要内容:
13、1 1C C语言的基本元素语言的基本元素语言的基本元素语言的基本元素2 2数据类型数据类型数据类型数据类型3 3不同类型数据间的转换不同类型数据间的转换不同类型数据间的转换不同类型数据间的转换4 4运算符与表达式运算符与表达式运算符与表达式运算符与表达式242.1C语言的基本元素语言的基本元素有七种:有七种:标识符标识符关键字关键字空白字符空白字符注释注释分隔符分隔符 常量常量运算符运算符一一.标识符标识符u标识符的概念标识符的概念用来标记常量、变量、函数名等有效字符序列用来标记常量、变量、函数名等有效字符序列u标识符的使用规则标识符的使用规则1)由英文字母、数字由英文字母、数字(09)或下划
14、线或下划线_组成的字符序列组成的字符序列,且必须由英文字母或且必须由英文字母或_开头,英文字母区分大小写。开头,英文字母区分大小写。2)不与关键字标识符相同,故又称合法标识符不与关键字标识符相同,故又称合法标识符3)标识符长度随系统不同,最大长度为标识符长度随系统不同,最大长度为32个,大于个,大于32个不个不识别识别例:请判断下列标示符的合法性:例:请判断下列标示符的合法性:1)Smart1 5Smart bomb? key.pas 2)_decision FLOAT _555 int 3)#name key_pas file*.* _char 标识符的习惯用法标识符的习惯用法标识符的习惯用
15、法标识符的习惯用法a. a.常量用大写常量用大写常量用大写常量用大写 变量用小写变量用小写变量用小写变量用小写b.b.常用取简常用取简常用取简常用取简 专用取繁专用取繁专用取繁专用取繁 顾名思义顾名思义顾名思义顾名思义例:请判断下列标示符的合法性:例:请判断下列标示符的合法性:1)Smart15Smartbomb?key.pas2)_decisionA#C _555int3)!namekey_pasfile*.*_char25所谓关键字:即已由系统内部使用,不能重作其它定义所谓关键字:即已由系统内部使用,不能重作其它定义ANSIC关键字共有关键字共有32个个(教材教材P403附录附录C)扩展关
16、键字扩展关键字11个,共个,共43个个(TurboC2.0)二二. .关键字关键字三三. .空白字符空白字符即程序中标识符与标识符之间即程序中标识符与标识符之间, ,行与行之间的空白间隔行与行之间的空白间隔的字符的字符作用:程序文本格式的编辑,提高可读性作用:程序文本格式的编辑,提高可读性空白字符在编译时不产生代码空白字符在编译时不产生代码四四. .注释注释(/*.*/)(/*.*/)辅助程序编辑过程中的记忆、阅读和理解辅助程序编辑过程中的记忆、阅读和理解使用的位置:与使用的位置:与“空白字符空白字符”相同,可多行注释相同,可多行注释不产生编译代码不产生编译代码不允许嵌套不允许嵌套asm_cs
17、_ds_es_sscdeclfarnearhugeinterruptpascal例如:例如:/*Thisisanexample/*fortest*/*/非法非法正确的格式一正确的格式一/*Thisisanexample*/*fortest*/正确的格式二正确的格式二/*Thisisanexamplefortest*/26五五. .分隔符分隔符有八种,在有八种,在C编译程序中有其固定含义编译程序中有其固定含义3 32.1C语言的基本元素语言的基本元素272.2 C C语言的数据类型语言的数据类型 C语言数据类型语言数据类型构造类型构造类型基本类型基本类型整型(整型(int)实型(浮点型)实型(浮
18、点型)字符型(字符型(char)枚举型(枚举型(enum)单精度型(单精度型(float)双精度型(双精度型(double)数组类型数组类型结构体类型(结构体类型(struct)共用体类型(共用体类型(union)指针类型指针类型空类型(空类型(void)C C语言中数据有常量和变量之分,它们分别属于以上这语言中数据有常量和变量之分,它们分别属于以上这些类型。些类型。28 许多程序设计语言都把它们能处理的数据分成许多程序设计语言都把它们能处理的数据分成若干类,这些类就是数据类型。若干类,这些类就是数据类型。 为什么要划分数据类型?为什么要划分数据类型? 不同类型的数据在计算机内表示不同;不同类
19、型的数据在计算机内表示不同; 不同类型的数据能执行的运算不同;不同类型的数据能执行的运算不同; 计算机能处理的问题中的数据是广义的。计算机能处理的问题中的数据是广义的。变量名代表内存中的存储单元,变量的类型决定存变量名代表内存中的存储单元,变量的类型决定存储单元的大小。储单元的大小。2.2 C2.2 C语言的数据类型语言的数据类型 29基本数据类型描述基本数据类型描述(基于基于16位机器位机器)类类型型说说明明字字节节数数值值范范围围备备往往int整型整型2- -3276832767- -215(215- -1)unsignedint无符号整型无符号整型20655350(216- -1)sig
20、nedint有符号整型有符号整型2- -3276832767shortint短整型短整型2- -3276832767unsignedshortint无符号短整型无符号短整型2065535signedshortint有符号短整型有符号短整型2- -3276832767longint长长整型整型4- -21474836482147483647- -231(231- -1)unsignedlongint无符号无符号长长整型整型4042949672950(232- -1)signedlongint有符号有符号长长整型整型4- -21474836482147483647float单单精度型精度型4- -
21、3.410383.410387位有效位位有效位double双精度型双精度型8- -1.7103081.71030815位有效位位有效位longdouble长长双精度型双精度型10- -3.41049323.410493219位有效位位有效位char字符型字符型1- -128127- -27(27- -1)unsignedchar无符号字符型无符号字符型102550(28- -1)signedchar有符号字符型有符号字符型1- -12812730Short只能修饰只能修饰int, ,且且shortint可省略为可省略为short;Long只只能能修修饰饰int和和double, ,修修饰饰为为
22、lontint时时, ,可可省省略略为为long; Unsigned和和singed只只能能修修饰饰char和和int, ,一一般般情情况况下下, ,char和和int默认为默认为signed型;型;实实数数float和和double型型总总是是有有符符号号的的, ,不不能能用用unsigned修饰修饰. .3.2 C C语言的数据类型语言的数据类型 31 常量常量 常量是在程序运行中其值不可改变的数据,常量在程序中不用经过任何说明就可以使用。常量是在程序运行中其值不可改变的数据,常量在程序中不用经过任何说明就可以使用。常量分五种。常量分五种。数数字符常量字符常量字符串常量字符串常量换码序列换
23、码序列符号常量符号常量实数实数整数整数32八进制整数:八进制整数:07组成,最高位用组成,最高位用0引导引导十六进制整数:十六进制整数:09及及af或或AF组成,组成,最高位用最高位用0x或或0X引导引导1.整数常量整数常量十进制整数:十进制整数:09组成组成,第一位数字为非零(除零外)第一位数字为非零(除零外)例:例:0x20=2161+0160=(32)10=(00100000)20xff=15161+15160=(255)10=(11111111)20X0A=(10)10(?)2例:例:0177=182+781+780=(127)10=(001111111)20258(?)10(?)2例
24、:例:123-270+445678L6LL:表示长整型:表示长整型(longint)常量常量 常量常量- -数数 331.整数常量整数常量 常量常量- -数数 342.实数常量实数常量 常量常量- -数数 a.a.十进制形式:由十进制形式:由0909数字及小数点组成数字及小数点组成b.指数形式指数形式整数部分整数部分.尾数部分尾数部分E|e+ | -指数部分指数部分两部分不能同时缺省两部分不能同时缺省 以以10为底为底35例:判断表示实数常量的合法性例:判断表示实数常量的合法性0.14e22891E-3e5.14e-24.0E 例:判断表示实数常量的合法性例:判断表示实数常量的合法性0.14e
25、22891E-3e5.14e-24.0E字符常量:字符常量:36a.用用“”括起来的零个或多个字符括起来的零个或多个字符(含转义字符含转义字符)组成的字符序列组成的字符序列b.系统在字符串的结尾自动加上一个结束标志系统在字符串的结尾自动加上一个结束标志0c.字符串中特殊字符的表示方法字符串中特殊字符的表示方法例例a.Howdoyoudo!atHello!nWang.例例b. Hello,Liu!字符串长度字符串长度10Hello,Liu!Hello,Liu!00字节数字节数11输出的字符串是:输出的字符串是:例例c.有一个字符串常量有一个字符串常量Shesaid:Hello!n包含的转义字符情
26、况包含的转义字符情况Shesaid:Hello!n.判断下面的语句是否正确?为什么?判断下面的语句是否正确?为什么?charch=“e”;charch=e;Shesaid:Hello! 常量常量- -字符串常量字符串常量 37 常量常量- -字符串常量字符串常量 实际上字符串常量在内存中存储的是字符的代码值,如图所示。实际上字符串常量在内存中存储的是字符的代码值,如图所示。所以这样的字符串称为所以这样的字符串称为C字符串字符串。在内存中的存储为:在内存中的存储为:38 常量常量- -换码序列换码序列换码序列换码序列转义字符转义字符39 常量常量- -换码序列换码序列换码序列换码序列转义字符转义字符40 常量常量- -符号常量符号常量符号常量符号常量41 常量常量- -符号常量符号常量符号常量符号常量