130 likes | 334 Views
第一章 C 语言概述. 教学目的: 1 、了解 C 语言的产生过程 2 、掌握 C 程序结构 3 、掌握 C 程序开发过程 4 、掌握用 TURBO C 运行一个 C 程序。 教学重点: 1 、掌握 C 程序的基本结构构成 2 、学会用 Turbo C 运行一个 C 程序 教学难点:掌握 C 程序的开发过程. 1.1 C 语言的历史和特色. 一 历史 1 、 1960 年出现了 ALGOL 60 。 2 、 1963 年和 1967 年, 在 ALGOL 60 的基础上推出了 CPL 和 BCPL 语言更接近于硬件。
E N D
第一章 C语言概述 教学目的: 1、了解C语言的产生过程 2、掌握C程序结构 3、掌握C程序开发过程 4、掌握用TURBO C运行一个C程序。 教学重点: 1、掌握C程序的基本结构构成 2、学会用Turbo C运行一个C程序 教学难点:掌握C程序的开发过程
1.1 C语言的历史和特色 一 历史 1、1960年出现了ALGOL 60。 2、1963年和1967年, 在ALGOL 60的基础上推出了CPL和BCPL 语言更接近于硬件。 3、1970年美国贝尔实验室对BCPL语言做了进一步简化,设计了B语言,并用B语言编写了第一个UNIX操作系统。 4、在1972年至1973年间,贝尔实验室的D.M.Ritchie在B语言的基础上设计出C语言。
二 特色 1、简洁紧凑,使用方便灵活C语言一共只有32个关键字、9种控制语句,程序书写自由,压缩了一切不必要的成分,语言简练。 2、运算符丰富C语言有34种运算符和15个等级的运算优先顺序,使表达式类型多样化,可以实现在其它语言中难以实现的运算。 3、数据类型丰富C语言的数据类型有整型、实型、字符型、数组类型、指针类型、结构体类型、联合体类型及枚举类型等,能用来实现各种复杂的数据结构的运算。
4、模块化结构C语言用函数作为程序的模块单位,便于实现程序的模块化,而且便于模块间相互调用及传递数据。4、模块化结构C语言用函数作为程序的模块单位,便于实现程序的模块化,而且便于模块间相互调用及传递数据。 5、语法限制少和程序设计自由度大C语言允许程序编写者有较大的自由度,放宽了以往高级语言严格的语法检查,较好地处理了“限制”与“灵活”这一对矛盾。 6、比较接近硬件C语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。 7、生成目标代码质量高、程序执行效率高一般只比汇编程序生成的目标代码效率低10%―20%。 8、可移植性好基本上不做修改就能用于各种型号的计算机和各种操作系统。
1.2 C程序结构 下面列出几个简单的C程序来说明C程序的结构特征。 例1.1 输出一行信息。 main ( ) { printf ("This is first C programme! \n"); } 该程序的作用是输出一行信息:This is first C programme! main表示“主函数”; 函数体用大括号{}括起来。本例题中主函数仅包含一个语句,该语句由printf ()输出函数构成。括号内双引号中的字符串按原样输出; ´\n´是换行符,即在输出" This is first C programme! "后回车换行; 语句后面有一个分号,表示该语句结束,这个分号必不可少。
例1.2 计算两个数之和。 main ( ) /*求两个数之和*/ { int a ,b,sum; /*定义3个整型变量*/ a=123; /*以下3行为C语句*/ b=321; sum=a+b; printf ("sum is %d\n",sum); } 该程序的作用是求两个整数 a 和 b之和 sum ,并在屏幕上输出 sum。程序中,/*……*/表示注释部分,对编译和运行不起作用。第3行是变量说明,使用的a、b和sum为整型(int)变量。第4行是两个赋值语句,使a的值为123,b为321。第5行使sum的值为a+b,第6行的%d是输入输出的“格式说明”,表示“十进制整数类型”,printf函数中括号内最右端的sum是要输出的变量,当然它的值为444。
例1.3 比较两个数的大小。 main ( ) /*主函数,功能输入两个整数,判断后输出较大的数*/ { int a ,b,c; /*定义3个整型变量*/ scanf ("%d,%d",&a,&b); /*输入变量a和b的值*/ c=max(a,b); printf ("max= %d\n",c); /*输出c的值*/ } int max (int x,int y) /*定义max()函数,函数值为整型,x,y为形式参数、整形变量*/ { int z; /*定义main ()函数内部用到的变量z为整数*/ if (x>y) z=x; /*将x,y中较大的值赋给z*/ else z=y; return (z); /*将z值返回。通过max()函数带回调用处*/ }
该程序的作用是从键盘输入两个整数,然后在屏幕上输出它们中较大值的数。该程序的作用是从键盘输入两个整数,然后在屏幕上输出它们中较大值的数。 程序的第5行是调用max()函数,在调用过程中将实际参数a和b的值,分别传递给max()函数中的形式参数x和y,然后得到一个返回值(z的值),并把这个值赋给变量c。 运行情况如下: 2,8 ↙ max=8
从以上几个例题,可以看到C程序的结构特征。从以上几个例题,可以看到C程序的结构特征。 1. C程序是由函数构成的。 一个C程序至少有一个main ()函数,也可以包含一个main ()函数和若干个其它函数。 2. 一个函数有两部分构成。 函数说明部分,即函数的第一行,包括函数类型、函数名、形参类型、形参名。 函数体,由一对大括号{}括起来的语句集合。函数体一般包括有声明部分和执行部分。声明部分用于定义所用到的变量。执行部分由若干语句组成。 3. 一个C程序总是从main ()函数开始执行,而不管main ()在源程序中的位置,执行完主函数中的所有语句后,程序就结束。 4. 每个语句和变量定义的最后必须要有一个分号,分号是C语句的必要组成部分。 5. C语言本身没有提供输入和输出语句,输入输出操作是通过库函数scanf ()、printf ()等函数来实现的。 6. C语言用/*……*/对程序进行注释,/和*之间不允许留有空格,/*和*/应当一一对应匹配,注释部分允许出现在程序中的任何位置上。程序中加一些注释,可以增加程序的可读性。
1.3 C程序的开发过程 用C语句编写的程序称为“源程序”。 1. C程序开发的4个基本步骤 一般C程序开发要经历4个基本步骤: 编辑——编译——连接——运行 (1)编辑 使用字处理软件或编辑工具将源程序以文本文件形式保存到磁盘,源程序文件名由用户自己选定,但扩展名必须为".c"。 (2)编译 编译的功能就是调用“编译程序”,将已编辑好的源程序翻译成二进制的目标代码。如果源程序没有语法错误将产生一个与源程序同名,以".obj"为扩展名的目标程序。 (3)连接编译后产生的目标程序往往形成多个模块,还要和库函数进行连接才能运行,连接过程是使用系统提供的“连接程序”运行的。连接后,产生以".exe"为扩展名的可执行程序。 (4)运行可执行程序生成后,就可以在操作系统的支持下运行,若执行结果达到预期的目的,则开发工作到此完成,否则,要进一步地经过以上过程以取得最终的正确结果。
2. 使用Turbo C开发程序的方法 现在,多数的C程序开发使用一个集成Turbo C开发工具来完成。下面简单介绍使用Turbo C开发程序的方法。 (1)Turbo C的目录及文件 Turbo C应装入磁盘的某一目录下,例如,放在c盘的根目录下一级TC子目录下,Turbo C安装完成后,磁盘上将增加以下目录及文件: TC子目录(c:\tc):其中包括tc.exe、tcc.exe、make.exe等执行文件。 INCLUDE子目录(c:\tc\include):其中包括stdio.h 、string.h、math.h等头文件。 Lib子目录(c:\tc\lib):其中包括graphlics.lib 、math.lib 、math1.lib等库函数文件。 BGI子目录(c:\tc|bgi):其中包括tc运行时所需的信息。 通过执行tc.exe命令就可以进入Turbo C环境,如果用户的当前目录是Turbo C 所在的子目录tc,则只需从键盘输入“tc”命令即可。 C:\tc>tc ↙ (2)Turbo C集成环境作简单介绍,它包括以下几个方面的内容: 主菜单窗口 编辑窗口 信息窗口 功能键提示行
3. 用Turbo C运行第一个C程序 下面介绍使用Turbo C编辑和运行一个简单的C程序的操作步骤: (1)编辑或修改源程序。 在编辑窗口键入一下源程序: main ( ) { printf (" This is my first C program"); } 然后执行“File/save”命令;或按“F2”键存盘。 (2)编译与连接源程序。 执行“compile/make exe file”命令或直接按下F9键,即可一次完成编译与连接。 (3)运行程序。 按“F10”键返回主菜单,用光标移动键将亮条移到“Run”菜单选项回车或按下“Ctrl+F9”键,即可运行刚生成的可执行文件。此时Turbo C工作窗口消失,屏幕上显示程序运行结果: This is my first C program 若发现运行结果不对,可再按“F10”键回工作窗口,重复上述步骤。 (4)运行程序后查看程序的运行结果。 (5)退出Turbo C,按“Alt+X”键,系统即退出Turbo环境。
作业: 1. 程序的构成,main ()函数和其他函数。 2. 头文件、数据说明、函数的开始和结束标志。 3. 源程序的书写格式。 4. C语言的风格。