第二章 c语言概述.docx

上传人:b****5 文档编号:6900942 上传时间:2023-01-12 格式:DOCX 页数:16 大小:128.04KB
下载 相关 举报
第二章 c语言概述.docx_第1页
第1页 / 共16页
第二章 c语言概述.docx_第2页
第2页 / 共16页
第二章 c语言概述.docx_第3页
第3页 / 共16页
第二章 c语言概述.docx_第4页
第4页 / 共16页
第二章 c语言概述.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

第二章 c语言概述.docx

《第二章 c语言概述.docx》由会员分享,可在线阅读,更多相关《第二章 c语言概述.docx(16页珍藏版)》请在冰豆网上搜索。

第二章 c语言概述.docx

第二章c语言概述

第二章C语言概述

本章的重点、难点:

•C语言的基本结构

•C语言程序开发工具比较

•编译、运行、调试C程序的步骤及技巧。

学习目标:

•了解C语言的发展史及特点。

•掌握C程序的结构及书写规则。

•掌握TurboC2.0和VisualC++6.0编释系统的环境配置

•掌握C程序的编辑、编译、运行及调试过程。

C语言是一种结构化、模块化、可编译的通用程序设计语言。

由于其强大的功能,使用方便灵活、移植性强等特点在计算机的各个领域内得到广泛的应用。

从UNIX、DOS到Windows、Linux都使用了C语言来进行设计。

C语言虽然是高级语言,但也可以完成许多只有低级语言才能完成的、面向机器的底层工作,因此也被称之“中间语言”。

本章主要从C语言的产生与发展历程、C语言的特点,C语言的基本结构以及如何在TurboC及VisualC++环境下编辑、编译、运行及调试C程序等方面进行介绍。

2.1C语言的发展史及特点

2.1.1C语言的产生与发展

C语言是国际上流行的、很有发展前途的计算机高级语言。

C语言适合于作为“系统描述语言”。

它既可以用来编写系统软件,也可以用来编写应用程序。

C语言产生的根源可以追溯到ALGOL60。

1960年出现的ALGOL60是一种面向问题的高级语言,它离硬件比较远,不适合编写系统程序。

1963年剑桥大学推出了CPL(CombinedProgrammingLanguage)语言,CPL语言在ALGOL60的基础上与硬件接近了一些,但规模仍然比较宏大,难于实现。

1967年,剑桥大学的MartinRichards对CPL语言做了简化,推出了BCPL(BasicCombinedProgrammingLanguage)语言。

BCPL语言是计算机软件人员在开发系统软件时作为记述语言使用的一种结构化程序设计语言,它能够直接处理与机器本身数据类型相近的数据,具有与内存地址对应的指针处理方式。

1970年,KenThompson(美国,贝尔实验室)以BCPL语言为基础,又作了进一步的简化,设计出比较简单而且很接近硬件的B语言(取BCPL的第一个字母)。

但是由于B语言过于简单,数据没有类型,功能也有限,1972年至1973年间,DennisM.Ritchie和BrianW.Kernighan(美国,贝尔实验室)在B语言的基础上设计出了C语言(取BCPL的第二个字母)。

首先用于重新改写了UNIX操作系统。

此后,随着UNIX操作系统的发展,C语言越来越广泛地被人们接受和应用。

C语言的标准化工作是从20世纪80年代初期开始的。

1983年,美国国家标准化协会(ANSI)颁布了C语言新标准ANSIC。

随着C语言的不断不展,1987,美国国家标准化协会又颁布了新一代标准-87码ANSIC。

1990年ANSIC成为ISO的标准。

目前流行的C语言编译系统都是以它为基础。

目前,我们常用的C语言版本主要有BorlandInternational公司的TurboC和Microsoft公司的MicrosoftC等。

2.1.2C语言的特点

C语言发展如此迅速,而且成为最受欢迎的语言之一,主要因为它具有强大的功能。

C语言的主要特点如下:

(1)语言简洁、书写方便。

C语言共有32个关键字,程序书写形式自由、简练。

(2)运算符丰富,语言表达能力强。

C语言共有34种运算符,类型丰富、灵活、多样,功能强大。

可直接处理字符、访问内存地址、进行位操作等。

(3)数据结构系统化。

C语言具有现代语言的各种数据结构,加上C语言的丰富的数据类型,能方便地构造更加复杂的数据结构(如:

使用指针构造链表、树、栈)。

(4)具有结构化的控制语句。

C语言是结构化程序设计语言,提供了各种控制语句(如:

if/else,switch/case,for,while,do…while语句)。

这种结构化的方式可以使程序层次清晰,便于使用、维护及调试。

C语言是以函数形式提供给用户,从而使程序完全结构化。

(5)程序运行效率高。

C语言经过编译后生成目标代码小,质量高,程序的执行效率高。

试验表明,C源程序生成的运行程序的效率仅比汇编程序的效率低10%~20%。

(6)可移植性好。

经过编译的C语言程序不做修改或少量修改就可以应用于各种型号的计算机和操作系统上。

2.2C语言的程序结构

2.2.1C程序的基本结构

用C语言编写的程序称为C源程序或C程序。

一个C程序仅由一个main()函数组成或由一个main()函数和多个其他用户自定义函数结合而成。

下面通过三个由简到难的C程序实例,来详细了解C语言程序的基本结构和书写规则。

例2-1 仅由main()函数构成的简单的C程序的例子。

main()

{

printf(“Howareyou!

\n”);

}

运行结果如下:

Howareyou!

说明:

(1)C程序的基本结构是函数。

函数也称模块,是完成一个程序功能的最小功能单位。

(2)C函数从“{”开始,到“}”结束。

例2-2 求两数之和的C程序的例子。

main()/*求两数和*/

{

inta,b,sum;

a=12;b=21;

sum=a+b;

printf(“sum=%d\n,sum”);

}

运行结果如下:

sum=33

说明:

(1)语句是组成C程序的基本单位,以分号结束。

一行一句,也可以一行多句。

(2)注释不是C程序的语句,编译系统不进行编译和执行,只为增强程序的可读性。

以/*。

*/标记。

(3)采用缩进格式书写,使程序结构清晰,容易阅读。

例2-3 由main()函数和用户自定义函数组成的C程序的例子。

main()

{

inta,b,c;

printf(“Inputtwonumbers:

”)

scanf(“%d,%d”,&a,&b);

c=min(a,b);/*函数调用*/

printf(“min=%d\n,c”);

}

intmin(intx,inty)/*定义min函数*/

{

intz;

if(x

z=x;

else

z=y;

return(z);

}

运行结果如下:

Inputtwonumbers:

45,21

min=21

说明:

(1)min()函数是用户自定义的功能函数,必须先定义才能在main()函数中使用。

(2)printf()和scanf()函数是系统函数,可直接在程序中使用。

(3)main()是C程序的入口点(即程序总是从main()开始执行),可以放在程序的任何位置。

通过上面三个C程序,一个完整的C程序结构应该有以下特点:

(1)C语言程序是由函数组成的,每个C语言程序必须有且仅有一个main()函数,称为主函数。

它是程序执行的起点(也称入口点)。

除主函数外,C程序还可以包括若干个其他函数(系统函数和用户自定义函数),它们可以互相调用,最终返回主函数结束程序执行。

(2)一个函数由两部分组成:

函数说明部分和函数体。

①函数说明部分:

也称之函数头,用来确定函数名、函数类型、形式参数名及函数类型。

例如:

例2-3中:

intmin(intx,inty)

类型名函数名形参x为整型形参y为整型

②函数体:

由{}括起来的一组语句组成。

语句包括:

声明部分和执行部分。

声明部分:

主要是用来进行变量的定义。

执行部分:

由多条语句组成的序列,完成一定的功能。

(3)C程序书写自由,语句以分号结束,可以一行写一句,也可以几句写在一行。

(4)语句后可用/*。

*/对该语句进行注释,以增加程序的可读性。

不被系统编译和执行。

2.2.2C语言的字符集

字符是组成语言的最基本的元素。

C语言字符集由字母,数字,空格,标点和特殊字符组成。

在字符常量,字符串常量和注释中还可以使用汉字或其它可表示的图形符号。

1.字母

小写字母a~z共26个

大写字母A~Z共26个

2.数字

0~9共10个

3.空白符

空格符、制表符、换行符等统称为空白符。

空白符只在字符常量和字符串常量中起作用。

在其它地方出现时,只起间隔作用,编译程序对它们忽略不计。

因此在程序中使用空白符与否,对程序的编译不发生影响,但在程序中适当的地方使用空白符将增加程序的清晰性和可读性。

4.标点和特殊字符

2.2.3C语言术语

学习C语言首先要搞清楚下列术语:

标识符,关键字,运算符,分隔符,常量和注释符。

1.标识符

在程序中使用的变量名、函数名、标号等统称为标识符。

除库函数的函数名由系统定义外,其余都由用户自定义。

C规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。

以下标识符是合法的:

a,b,t3,BOOKS_1,sum5

以下标识符是非法的:

4y以数字开头

x*T出现非法字符*

-3x以减号开头

bowy-1出现非法字符-(减号)

在使用标识符时还必须注意以下几点:

(1)标准C不限制标识符的长度,但它受各种版本的C语言编译系统限制,同时也受到具体机器的限制。

例如在某版本C中规定标识符前八位有效,当两个标识符前八位相同时,则被认为是同一个标识符。

(2)在标识符中,大小写是有区别的。

例如BOOK和book是两个不同的标识符。

(3)标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。

因此,命名应尽量有相应的意义,以便于阅读理解,作到“顾名思义”。

2.关键字

关键字是由C语言规定的具有特定意义的字符串,通常也称为保留字。

用户定义的标识符不应与关键字相同。

C语言的关键字分为以下几类:

(1)类型说明符

用于定义、说明变量、函数或其它数据结构的类型。

如前面例题中用到的int,double等

(2)语句定义符

用于表示一个语句的功能。

如例1.3中用到的ifelse就是条件语句的语句定义符。

(3)预处理命令字

用于表示一个预处理命令。

如前面各例中用到的include。

3.运算符

C语言中含有相当丰富的运算符。

运算符与变量,函数一起组成表达式,表示各种运算功能。

运算符由一个或多个字符组成。

4.分隔符

在C语言中采用的分隔符有逗号和空格两种。

逗号主要用在类型说明和函数参数表中,分隔各个变量。

空格多用于语句各单词之间,作间隔符。

在关键字,标识符之间必须要有一个以上的空格符作间隔,否则将会出现语法错误,例如把inta;写成inta;C编译器会把inta

当成一个标识符处理,其结果必然出错。

5.常量

C语言中使用的常量可分为数字常量、字符常量、字符串常量、符号常量、转义字符等多种。

在后面章节中将专门给予介绍。

6.注释符

C语言的注释符是以“/*”开头并以“*/”结尾的串。

在“/*”和“*/”之间的即为注释。

程序编译时,不对注释作任何处理。

注释可出现在程序中的任何位置。

注释用来向用户提示或解释程序的意义。

在调试程序中对暂不使用的语句也可用注释符括起来,使翻译跳过不作处理,待调试结束后再去掉注释符。

2.3C语言程序开发工具

学习C语言程序设计,必须要学会使用C语言的编程工具。

目前用于C语言程序设计的工具最多的就是Borland公司的TurboC集成开发环境和Microsoft公司的VisualC++。

2.3.1TurboC2.0集成开发环境的使用

TurboC是美国Borland公司的产品,是一个集源程序编辑、编译、调试、运行于一体,利用菜单驱动的集成化程序的开发环境。

以编译速度快、代码执行效率高而著称,目前广泛使用的是TurboC2.0和TurboC3。

0,下面将在TurboC2.0(以下简称TC2.0)集成开以环境中实现一个C程序的运行过程。

TC2.0是DOS下运行的C语言系统,也可以以全屏方式或窗口方式运行在各种Windows系统下。

1.TC2.0的启动、命令菜单与退出

(1)启动TC2.0集成开发环境

在TC2.0安装完成后,启动MS-DOS命令窗口,在TC子目录下输入TC,按下回车键即可进入TC2.0集成开发环境。

启动后的程序主界面如下图2-1所示:

图2-1TC2.0主界面

主界面窗口有四部分构成:

主菜单条、编辑窗口、消息窗口和参考行。

C程序的编辑、编译、调试及运行都将在这个主屏幕中进行。

(2)命令主菜单的使用

主菜单在TurboC2.0主屏幕顶上一行,菜单项有:

FileEditRunCompileProjectOptionsDebugBreak/watch。

除Edit外,其它各项均有子菜单,只要用Alt加上某项中第一个字母,就可进入该项的子菜单中。

详细操作方法如下:

1按下功能键[F10],激活菜单项。

2移动左、右方向键,定位所需的主菜单项,按回车键就可打开子菜单项。

3移动上、下方向键,定位所需的子菜单项,按回车键就执行选定的功能,同时关闭菜单。

若激活的菜单不再使用时,按[F10或ESC]键即可返回。

(3)系统的退出

有两种方法可以退出TC2.0,依次执行[Alt+F]、[Quit]命令或者同时按下[Alt+X]健即可。

2.编辑、保存C程序

启动TC2.0后,依次执行[Alt+F]、[New]命令,创建新文件,或者启动TC2.0后,连续按两次[ESC]键,编辑窗口被激活,此时就可以编辑C程序代码了。

在编辑窗口中输入如下代码:

#include“stdio.h”

main()

{

printf(“HelloWorld!

\n”);

}

程序编辑完成后,依次执行[Alt+F]、[Save]命令,或者按下[F2]键,弹出窗口提示输入文件的名称,默认的文件名为TC2.0根目录下的“C:

\TC2.0\NONAME.C”,如图示2-2所示:

图2-2保存编辑好的C源程序

输入要保存的文件名“tc01.c”后按回车,C源程序保存完成。

在编辑操作中,常用的编辑键有:

[PageUp]向前翻页;[PageDown]向后翻页;[Home]将光标移在所在行的开始;[End]将光标移在所在行的末尾;[Ctrl+Y]删除光标所在行;[Ctrl+T]删除光标所在词。

在编辑源程序的过程中,随时可以按[F2]键来保存当前的文件,然后继续编辑,这是一个良好的编程习惯。

3.编译C程序

编辑程序完成后,依次执行[Alt+C]、[MakeEXEFile]命令,该集成开发环境将把源程序编译为目标文件(.obj),然后连接成可执行文件(.exe),若没有错误,将弹出如下信息窗口,提示编译成功,得到可执行文件tc01.exe,如图2-3所示:

图2-3源文件编译为可执行文件

以上编译过程也可以通过按下[F9]键完成。

如果程序有错误,将弹出提示编译出错的信息窗口,并在消息窗口中提出详细的出错信息。

在编译操作中,常用的编辑键有:

[Alt+F9]将源程序编译为目标程序(.obj);[Ctrl+F9]调用并执行可执行程序,若当前程序还没有生成可执行文件,则先生成可执行文件再执行;[F9]将源代码编译、连接生成可执行文件。

4.运行、查看

当要运行编译完成的,依次执行[Alt+R]、[Run]命令,或按下[Ctrl+F9]键,此时会看到屏幕一闪,程序已经运行完成。

要查看程序的运行结果,依次执行[Alt+R]、[UseScreen]命令,或按下[Alt+F5]键,屏幕将自动切换到用户屏幕,即可看到程序的运行结果。

,要返回编辑窗口只需在屏幕上按任意键即可返回。

至此,一个C程序从编辑到运行就完成了,在整个过程中,主要生成了如下文件:

tc01.c(源文件)、tc01.obj(目标文件)、tc01.exe(可执行文件)。

若以后再要运行tc01.exe文件,只需在DOS下输入tc01,按回车即可。

2.3.2VisualC集成开发环境的使用

除TurboC集成开发环境外。

Microsoft公司的VisualC++也是常用的C语言开发工具。

由于VisualC++集成开发环境是运行在Windows平台下,是基于图形界面的操作,因此对于初学者来说,也是一种比较容易掌握的。

下面将在VisualC++6.0(以下简称VC6.0)集成开以环境中实现一个C程序的运行过程。

VC6.0是运行在Windows平台下的集成开发环境,安装比较简单,只需按提示步骤操作即可。

1.VC6.0的启动、退出及程序文件的创建

(1)启动VC6.0集成开发环境

在VC6.0安装完成后,点击“开始”-“所有程序”-“MicrosoftVisualStudio6.0”-“MicrosoftVisualC++6.0”就可进入VC6.0集成开发环境。

启动后的程序主界面如下图2-4所示:

图2-4VC6.0主界面

(2)退出VC6.0集成开发环境

依次执行[File]-[Exit]命令即可退出。

(3)创建程序文件

依次执行[File]-[New]命令,在弹出的窗口中选择“File”选项卡,在窗口左边列出的文件类型中选择“C++SourceFile”,在右边的相应文本框中输入文件名称“tc02.c”(注意:

一定要输入扩展名.c,否则程序将以.cpp的格式保存)和文件保存的位置,如图2-5所示,点击“OK”,进入VC6.0集成环境的代码编写窗口。

图2-5VC6.0集成环境中创建程序文件

2.编辑、保存C程序

在编辑窗口中输入如下代码:

如图2-6所示:

#include“stdio.h”

main()

{

printf(“HelloWorld!

\n”);

}

图2-6VC6.0编写源程序

3.编译、连接和运行C程序

程序编辑完成后,依次执行[Build]、[Compiletc02.c]命令,弹出对话框,询问是否创建一个项目工作区,选择“Y(是)”,VC6.0将自动在该源程序文件所在目录下建立相应的项目文件,如图2-7所示:

图2-7VC6.0编译源程序时创建项目文件

以上编译过程也可以通过按下[Ctrl+F7]键完成。

如图2-8所示:

图2-8VC6.0编译源程序生成目标文件

如果程序有错误,将显示编译出错的信息窗口,并在消息窗口中提出详细的出错信息。

若代码无编译错误,将显示:

的信息,说明程序没有错误和警告,此时源程序tc02.c已经生成目标文件tc02.obj,接下来将目标文件和相关的库函数连接成可执行的逻辑.exe程序。

依次执行[Build]、[Buildtc02.exe]命令,或按下[F7]键,程序编译完成。

如果是第一次运行VC6.0集成开发环境编译C程序,则需要对环境进行配置,单击菜单“BatchBuild”命令,弹出如图2-9所示:

图2-9“BatchBuild”对话框设置

确保选中了“tc02-Win32Release”选择,这样生成的可执行文件才是发行片的程序,否则生成的将是调试版(DeBug)的程序。

4.运行、查看

经过编译、连接,tc02.c已经是一个独立的可执行程序,可以在Windows资源管理器中直接执行,也可以依次执行[Build]、[Executetc02.exe]命令,或按下[Ctrl+F5]键,屏幕将自动切换到用户屏幕,即可看到程序的运行结果。

如图2-9所示:

图2-9VC6.0下的程序运行结果

要返回编辑窗口只需在屏幕上按任意键即可返回。

至此,在VC6.0集成开发环境下,一个C程序从编辑到运行就完成了。

5.关闭工作区

程序设计完成后,应该将设计结果保存,并关闭当前的工作区,以便后面的工作。

依次执行[File]、[Saveall]命令,保存所有文件;然后执行[File]、[CloseWorkspace]命令,关闭工作区。

通过上面的两个工具的介绍,我们可以看出,两个工具各有其特点,TC2.0容易操作,简洁、编译效率高;而VC6.0具有图形窗口界面,集成功能较多,编译所花时间较多,占用资源大。

2.4小结

C语言是目前世界计算机界广泛应用的一种高级编程语言,正是因为它具有强大的功能、突出的特点而得到持续的发展。

C程序是由函数构成的,即函数是C程序的基本单位。

一个C程序必须有且只有一个main()函数,它是程序唯一的入口。

除此之个,C程序还可以包括多个系统函数和用户自定义函数,它们可以互相调用,最终返回main()函数结束程序。

C语言中,标识符由“_”、字母、数字构成,且第一个字母只能是下划线或英文字母,长度不能超过8个字符。

C语言是一种对字母大小写敏感的语言,定义时要注意大小写的区分。

关键字具有特殊含义的系统标识符,不能用来定义标识符。

目前用于C语言程序设计的工具最多的就是Borland公司的TurboC集成开发环境和Microsoft公司的VisualC++,但TurboC更以其速度快、方便、简洁、功能强等优点,可以进行C程序的编辑、编译、连接、调试和运行等系列的工作。

2.5习题与实训

1.填空题

(1)C程序是以为基本单位,整个程序由组成。

(2)一个完整的C程序有且只能一个函数。

(3)一个函数由和两部分构成。

和。

(4)C源程序文件的扩展名是,编译后生成的文件的扩展名是,经过连接后生成的文件的扩展名是。

2.选择题

(1)C语言规定,在一个源程序中,main()函数出现的位置()

A)必须在最前面B)必须在最后面

C)必须在自定义函数后面D)可以任意

(2)以下不合法的标识符是()

A)_megB)ab_3C)3abD)For_of

(3)以下不是C语言的特点的是()。

A)控制流程结构化B)数据结构系统化

C)语言表达能力强D)语法定义严格

(4)以下说法正确的是()。

A)C语言的基本单位是函数B)语句是C语言的最小单位

C)C程序必须从第一行开始执行D)C语句以分号结束

3.问答题

(1)C语言有哪些特点?

(2)C程序的结构有哪几部分?

(3)常用的C语言程序设计的工具有哪些,各有什么特点?

(4)C程序的书写格式有哪些?

4.实训

实训目的:

(1)掌握TC2.0的基本操作方法。

(2)掌握在TC2.0编写、编译、运行C程序的操作过程及方法。

(3)通过编写运行一个简单的C程序,了解C语言的特点。

知识要点:

C程序的结构、利用TC2.0编写、编译、运行C程序的操作过程。

实训步骤:

(1)启动进入TC2.0集成开发环境。

(2)熟悉TC2.0的集成环境。

①熟悉TC2.0的窗口组成

②激活主菜单,查看每个菜单及子菜单选项及作用。

③了解F10键的作用。

④熟悉如何在主菜单和编辑窗口中切换

(3)编辑、运行一个C程序:

①依次执行[File]、[New]命令,新建文件

②输入以下程序:

#include“stdio.h”

voidmain()

{

inta,b,c;

printf(“Inputtwonumber

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1