C语言程序设计1_第1页
C语言程序设计1_第2页
C语言程序设计1_第3页
C语言程序设计1_第4页
C语言程序设计1_第5页
已阅读5页,还剩37页未读, 继续免费阅读

下载本文档

kok电子竞技权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

kok电子竞技:文档简介

C语言程序设计1.教材

C程序设计(第四kok电子竞技)

谭浩强清华大学出kok电子竞技社2.成绩评定

平时作业:20

实验:20

笔试:603.课程目标

(1)深入了解计算机工作原理

(2)掌握计算机语言,理解人机交互手段

(3)理解程序设计思想

(4)掌握计算机常用算法

(5)为进一步学习计算机知识奠定基础第1章C语言概述本章主要介绍C语言程序的结构和书写规则,以及TurboC的使用。主要内容 计算机语言及程序

C语言的发展及特点

C语言程序的结构

C语言的语句和关键字

TurboC的基本操作1.1计算机语言及程序1.程序的概念计算机每一个操作都是根据人们事先编好的指令完成的,为了使计算机完成一系列的操作,从而实现某个特定的目的,需要将一条条编好的指令输入到计算机中。所谓程序就是一组计算机能够识别和执行的、采用计算机语言表达的指令。一个特定的指令序列可以完成一定的功能。2.机器语言为了使计算机能理解人的意图,需要通过计算机语言进行人机交流,机器语言是最原始的计算机语言。计算机的工作是基于二进制的,也就是说,如果人们将操作意图以二进制形式表达并传入到计算机系统中,它就可以理解并执行这条指令。例如:可用16位二进制编码

10110110000000000000100100000111

代表“加法”运算(指令后面是被加数和加数),计算机就会在这一串0和1的控制下完成一次加法运算。这种计算机能够直接识别和接受的二进制代码称为机器指令,机器指令的集合就是该计算机的机器语言。显然,机器语言难学、难记、难修改,无法推广普及。3.符号语言为了克服机器语言的缺点,人们创造出符号语言,即用英文字符和十进制数表示一条指令。例如,指令

ADDA,B表示加法运算,其意义是将寄存器A中的数与寄存器B中的数相加,然后将计算结果存放到寄存器A中。但是,这种符号语言计算机并不能直接识别,需要一个专门的翻译程序,将符号语言翻译成机器语言,然后再交给计算机执行。这个翻译程序称之为“汇编程序”,因而符号语言又称为“汇编语言”。显然,符号语言比机器语言有了很大的进步,但仍然不便于使用和普及,仅用于专业人员。机器语言和汇编语言都非常“贴近”计算机,不同的计算机之间机器语言和汇编语言不能通用。有时也将它们称为“低级语言”。4.高级语言为了进一步提高程序编写的效率、普及应用,人们在上世纪五六十年代推出了高级语言。高级语言以英文单词为指令,采用四则运算和十进行制数为运算规则,可使得人们更容易编写复杂的计算机程序。例如,如果想计算并输出3.5×6×sin(π/3)

的值,可用如下语句实现:

PRINT3.5×6×sin(3.14159/3)高级语言功能强大、通用性好、易读、易写、易修改,很快便得到了广泛的应用。当然,高级语言也不能被计算机直接识别,因此需要一个将高级语言翻译成机器语言的程序。这个翻译程序有两种类型:编译程序:可将一个高级语言编写的“源程序”翻译成可被计算机执行的机器语言代码(称为“目标程序”),再交由计算机执行;解释程序:可将高级语言源程序逐句翻译成若干机器代码,交给计算机执行,然后再翻译下一句,直到程序结束。几十年来,全世界涌现出了数千种高级语言,经过不断淘汰,仅有几种高级语言得到了广泛应用。1.2C语言的历史背景C语言诞生前,系统软件主要用汇编语言编写。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性差;但一般的高级语言又难以实现对硬件的直接操作(这正是汇编语言的优势)且代码效率低,于是兼有汇编语言和高级语言特性的C语言应运而生。C语言是贝尔实验室于70年代初研制出来的,后来又被多次改进,并出现了多种kok电子竞技本。80年代初,美国国家标准化协会(ANSI)根据C语言问世以来各种kok电子竞技本对C语言的发展和扩充,制定了ANSIC标准(1989年、1999年再次做了修订)。语言简洁(仅32个关键字)、程序紧凑;运算符极其丰富,共有34种运算符;数据结构丰富,便于实现复杂的数据结构;具有结构化的程序控制语句,以函数为程序模块,便于结构化程序设计;语法限制较为宽松,程序设计自由;具有位操作功能,可以直接操纵硬件;生成的目标代码质量高,程序执行效率高;可移植性好(较之汇编语言)。

1.2C语言的特点1.3C语言程序的结构1.C语言程序的结构

一个完整的C语言程序由一个main()函数(主函数)和若干其它函数组成,或仅有一个主函数。例1-1:显示字符串。main(){printf(“ThisisaCprogram.\n”);}程序运行结果: ThisisaCprogram.例1-2:键盘输入两个数据,显示其中较大数。

intmax(intx,inty)

{

return(x>y?x:y);

} main() {intnum1,num2;printf(“Inputthefirstintegernumber:”);scanf(“%d”,&num1);printf(“Inputthesecondintegernumber:”);scanf(“%d”,&num2);printf(“max=%d\n”,max(num1,num2));}程序运行情况:

Inputthefirstintegernumber:6Inputthesecondintegernumber:9max=9交换main()函数和max()函数前后位置,运行结果相同。由上述两个例题可知C语言程序的结构:(1)函数是C语言程序的基本单位。

main()函数的作用,相当于其它高级语言中的主程序;其它函数相当于子程序。(2)C语言程序总是从main()函数开始执行。一个C程序总是从main()函数开始执行,不论其在程序中的位置。习惯上,将其放在最前面。当主函数执行完毕时,亦即程序执行完毕。2.函数的结构

任何函数(包括主函数)都是由函数说明和函数体两部分组成。其一般结构如下:

[函数类型]函数名(函数参数表)函数说明部分

{

说明语句部分;执行语句部分;函数体部分

}(1)使用的语法符号约定[...]

方括号表示可。瓤芍付,也可缺。弧

省略号表示前面的可以重复;

|

多个选择项中选择一个。例如:[static|extern|..….]函数名(函数参数1,函数参数2,…)(2)函数说明由函数类型(可缺。、函数名和函数参数表三部分组成,其中函数参数表的格式为:

数据类型形参[,数据类型形参2,……]如例1-2:

函数类型函数名函数参数表

intmax(intx,inty)(3)函数体函数体位于函数说明部分下方一对大括号之间,一般由说明语句和可执行语句两部分构成:说明语句部分:由变量定义、自定义类型定义、自定义函数说明、外部变量说明等组成;可执行语句:一般由若干条可执行语句构成。

注意:①函数体中变量定义语句必须在所有可执行语句之前;②也可没有变量定义。函数体结构示意图

main()/*主函数main()*/{intnum1;intnum2;printf(“Inputthe1integernumber:”);scanf(“%d”,&num1);printf(“Inputthe2integernumber:”);scanf(“%d”,&num2);printf(“max=%d\n”,max(num1,num2));}可执行语句部分变量定义部分函数体函数说明3.源程序书写格式所有语句都以分号”;”结束,程序的最后一个语句也不例外;程序行的书写格式自由,既允许一行内写几条语句,也允许一条语句分写在几行上;可使用注释来说明程序含义,以便阅读,但程序编译时忽略注释部分。C的注释格式为:

/*……*/注意:“/*”和“*/”必须成对使用,且“/”和“*”、以及“*”和“/”之间不能有空格,否则编译时出错;注释可单占一行,也可跟在语句的后面;如果注释内容较多,可分作几行写;注释中允许使用汉字。在非中文操作系统下,看到的是一串乱码,但不影响程序运行。1.4C语言的语句和关键字

1.C语言的语句C程序通过函数体中可执行语句向计算机系统发出操作命令。按语句功能或结构不同,C语句可分为:(1)控制语句控制程序流程,C有9条控制语句,分为三种:选择结构控制语句:if()~else~,switch()~循环结构控制语句:do~while(),for()~,while()~,break,continue其它控制语句:goto,return(2)函数调用语句函数调用语句由一次函数调用加一个分号构成。如:

printf("ThisisaCfunctionstatement.“);(3)表达式语句表达式语句由表达式后加一个分号构成。典型的表达式语句是在赋值表达式后加分号构成赋值语句。如:“num=5”是一个赋值表达式,而:“num=5;”却是一个赋值语句。(4)空语句空语句仅由一个分号构成,不执行任何操作。例如,下面就是一个空语句:

;(5)复合语句复合语句是由大括号括起来的一组(也可是一条)语句构成。例如:main(){……{……}/*复合语句。注意:右括号后无分号。*/……}注意:复合语句在语法上和单一语句相同,即单一语句可以出现的地方,也可以使用复合语句;复合语句可以嵌套,即复合语句中可再次出现复合语句。2.关键字关键字是系统用来表示特定含义的单词,编程人员不能当作其他字符串使用。C语言关键字共32个:数据类型关键字(12个):char,double,enum,float,int,long,short,signed,struct,union,unsigned,void控制语句关键字(12个):break,case,continue,default,do,else,for,goto,if,return,switch,while存储类型关键字(4个):auto,extern,register,static其它关键字(4个):const,sizeof,typedef,volatile1.运行一个C语言程序的一般过程TurboC是一个集源程序编辑、编译、连接、运行与调试于一体、用菜单驱动的集成软件环境,专门用来编辑、编译、执行C程序的软件。利用TurboC运行一个C语言程序的一般过程为:1.5TurboC的基本操作①

启动TC,进入TC集成环境;②

编辑(或修改)源程序(编辑完成后最好先保存源文件);③

编译,若编译成功,则转④;否则返回②;④

连接,若连接成功,则转⑤;否则返回②;⑤

运行,观察程序运行结果,验证程序的正确性。若出现逻辑错误,则返回②,直至程序正确;⑥

退出。2.TC的启动、退出与命令菜单(1)启动TurboC在命令行窗口运行TC.EXE(首先要转到tc.exe所在的目录,或输入tc命令时加上tc.exe的路径),即可弹出TurboC的窗口界面。①主菜单:主菜单条横向排列在屏幕顶端,并被激活,其中File主项成为当前项。②编辑窗口:主菜单的下面,是Edit(编辑)窗口和Message(消息)窗口。两个窗口中,顶端横线为双线显示的,表示该窗口是活动窗口。③状态行:编辑窗口的顶端为状态行,其中:Line1Col1:显示光标所在的行号和列号,即光标位置。Insert:表示编辑状态处于“插入”。当处于“改写”状态时,此处为空白。NONAME.C:显示当前正在编辑的文件名。“NONAME.C”表示用户尚未给文件命名。屏幕底端是7个功能键说明及<NumLock>键状态。(2)命令菜单的使用按下功能键<F10>,激活主菜单。如果主菜单已经被激活,则直接转下一步;用左、右方向键移动光带,定位于需要的主项上,然后再按回车键,打开其子菜单(纵向排列);用上、下方向键移动光带,定位于需要的子项上,回车即可选中执行。执行完选定的功能后,系统自动关闭菜单。注意:若菜单激活后不使用,可再按<F10>/<Esc>键关闭,返回原来状态。(3)退出TurboC菜单法:File|Quit(先选择File主项,再选择并执行Quit子项);快捷键法:<Alt>+“X”

。3.编辑并保存一个C语言源程序(1)激活主菜单选择File|Load项(或<F3>);(2)文件命名在“LoadFileName”窗口输入源程序文件名:直接输入:直接输入表示文件名的字符串;若文件已存在,则系统在编辑窗口显示该文件内容,可供编辑、修改;若是新文件,则给出一个空白编辑窗口,可供输入新的源程序;若该文件不在当前目录下,则需冠以路径名和盘符。选择文件(仅适用于已经存在的源程序文件):

--

空回车,显示当前目录下所有后缀为.c

的文件;

--

用方向键光带定位于所需的文件名上;

--

按回车键。(3)文件保存在编辑源程序过程中,随时都可以按<F2>键(或File|Save),将当前编辑的文件存盘。4.编译、连接

选择并执行Compile|MakeEXEFile项(快捷键<F9>),则TC将自动完成对当前正在编辑的源程序文件的编译、连接,并生成可执行文件。如果源程序中有语法错误,系统将在屏幕中央的“Compiling”(编译)窗口底端提示“Error:Pressanykey”(错误:按任意键)。按空格键,激活显示出错信息的“Message”(消息)窗口;“Edit”(编辑)窗口中也有一条光带,它总是停在编译错误在源代码中的相应位置。5.运行与查看结果

(1)运行当前正在编辑的源程序文件选择并执行Run|Run项(<Ctrl>+<F9>),程序运行结束后,仍返回到编辑窗口。若认为自己的源程序不会有错,可直接运行(即跳过对源程序的编译、连接步骤)。这时,TC将一次完成从编译、连接到运行的全过程;(2)查看运行结果选择并执行Run|UserScreen项(<Alt>+<F5>);查看完毕后,按任一键返回编辑窗口。若发现逻辑错误,则可在返回编辑窗口后,进行修改;然后再重新编译、连接、运行。6.编辑下一个新的源程序选择File|New

项即可开始编辑下一个源程序。如果屏幕提示如下确认信息:

NONAME.Cnotsaved.Save?(Y/N)该信息提示保存当前正在编辑的文件。若需保存,则键入“Y”,系统提示换名:

<d:><path>\NONAME.C输入给源程序文件起的名字即可。然后,系统弹出空白编辑窗口,开始编辑下一个新的源程序。否则,键入“N”,不保存,直接编辑新程序。第一章实验与作业1.作业

P15:1.3,1.5,1.6;2.实验

P15:1.6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论