资源描述
课程有关,学时:3220学时课堂,12学时上机考试:闭卷考试平时成绩:课堂点名、作业、上机,占20期末考试:占80,希望做到,“三多”:“多阅读程序、多编写程序、多上机调试程序”,“两勤”:“勤动脑、勤动手”,第1章程序设计ABC,周秀云zhouxy,C程序设计,计算机与人工智能,计算机行业的梦想让计算机(Computer)能像人一样地思考,与人自然交流,人工智能(ArtificialIntelligence),计算机与人工智能,1997年,IBM公司研制的深蓝超级计算机在一场“人机大战”中打败了国际象棋大师卡斯帕罗夫被誉为“人工智能的一大胜利”深蓝的主要研制者之一许峰雄博士:胜利靠的只是不知疲倦地高速运算,并不是什么智能,计算机与信息技术,计算机技术与通信技术结合,构成了信息技术(InformationTechnology),诞生了一个新词:IT嵌入式系统是IT未来的主要发展方向之一典型的嵌入式系统有:机器人、手机和智能家电等,计算机,计算机是用来延伸人的能力的工具,需要人来驾驭让非计算机专业的人更容易驾驭它完成这一目标的主要手段之一就是“编程(Programming)”,计算机基本工作过程,“冯诺依曼机”结构,大脑,记忆装置,眼睛和耳朵,计算机基本工作过程,存储器。程序和数据都以二进制代码形式存于存储器中。从形式上看,指令与数据没有区别。控制器。在它的控制下,指令依次从存储器中取出,然后对指令进行解释和执行。每条指令均由操作数、操作数地址和运算结果地址组成。运算器。用于完成算术、逻辑运算。输入、输出设备。用来完成人-机通信,计算机工作过程中的名词解释指令:计算机的工作体现为执行指令.指令是一组二进制代码,它给出了计算机要进行的操作和需要的数据,或取数据的地址。,程序程序是指为完成某个特定任务的一系列指令的集合。编程序:指按一定的要求和规定安排这一系列指令。,工作过程是一种“存储程序”的工作原理(事先编制程序、存储程序和自动连续执行程序)。只要存入不同程序,可实现不同任务。,计算机基本工作过程,整个过程的执行者是硬件,但硬件是受软件控制的编程,就是编写软件,使硬件按照人的意图工作,软件分类,计算机系统由软件和硬件组成软件:计算机所使用的各种程序的集合及程序运行时所需的数据,是相对硬件而言的计算机的信息部分,泛指程序。软件分系统软件和应用软件。,软件分类,软件分类,系统软件主要包括:操作系统各种语言的处理程序(是对源程序执行编译或解释操作的程序,不同的语言有不同的语言处理程序,源程序是用计算机语言编写而成的)各种服务程序、数据库管理系统等等。,软件分类,应用软件主要包括:各个应用领域中为解决各类问题而编写的软件。如:WORD、EXCEL、POWERPOINT。,软件的形成,软件(Software)的形成程序员(Programmer)编写程序源代码(SourceCode)编译器(Compiler)把源代码转换为可被计算机理解的机器代码(MachineCode)并把机器代码以可执行文件(ExecutableFile)的形式保存在磁盘上,编译语言,一种编译语言对应一种编译器程序员按照该语言的语法编写程序源代码,把自己的意图融入到代码中编译器读入源代码,把程序员的意图转换成可执行程序,供他人使用,源程序,可执行程序,编译器,程序设计语言(ProgrammingLanguage)是人与计算机进行交流的语言是指用来编制和设计程序所使用的计算机语言计算机直接能读懂的语言机器语言(MachineCode),也叫机器代码一种纯粹的二进制语言,程序设计语言的故事,程序设计语言的故事,计算机为什么用二进制呢?为什么不用我们日常熟悉的十进制呢?二进制在在电器元件中容易实现计算机进行二进制运算比进行十进制运算要简单得多,程序设计语言的故事,机器语言编写的1+1程序二进制代码序列,又称目标语言。运行速度快,但编程难、易错、不通用,故不用它编程。每一种计算机都有自己的机器语言(指令系统)。,101110000000000100000000000001010000000100000000,程序设计语言的故事,汇编语言(AssembleLanguage)编写的1+1程序,MOVAX,1ADDAX,1,将二进制代码用符号(或称助记符)来表示。随不同CPU而异,没有通用性。汇编语言程序(源程序)必须经汇编程序翻译成目标程序,通过连接程序生成可执行程序后,才能执行。,程序设计语言的故事,BASIC语言编写的1+1程序C语言编写的1+1程序,PRINT1+1,#includemain()printf(%dn,1+1);,程序设计语言的故事,高级语言是面向问题的语言,与自然语言接近。编写的程序可以在不同型号的机器上使用,易读、易记、通用性强,是面向用户的语言。源程序需通过编译程序变为目标程序,再链接成可执行的机器语言程序后才能执行,流行语言,应用编程语言机器语言汇编语言BasicPascalCC+JavaC#专项编程语言LotusNotesPowerBuilder,Web编程语言HTMLXMLPHPASPJSPJavaScriptVBScript其他perlpythonVBA,C程序设计语言,简称C语言BCPL语言进化成B语言,B语言又进化为C语言是一种高级语言高级语言并不是“高级”,只是相对低级语言,在一个高的级别上进行编程历史悠久,战勋卓著诞生于上世纪70年代初,成熟于80年代“ANSIC”标准的发布是C语言成熟的标志很多重量级软件都是用C写的上天入地,无所不能几乎没有不能用C写出来的软件,没有不支持C的系统,C程序设计语言及计算机的层次,硬件(Hardware),操作系统(OS),应用程序(Application),应用平台,基于平台的应用程序,低级语言的地盘,高级语言的地盘,C语言的地盘,C程序设计语言,C语言被分类位高级语言,但实际上它是一种介于高级语言和低级语言之间的语言。很多流行语言、新生语言都借鉴了它的思想、语法从C+,到Java,再到C#正确地学好C语言,是学习这些流行语言的基础。,C语言的设计者DennisM.Ritchie,Ritchie漫画像,Cisquirky,flawed,andanenormoussuccess.,和Unix的设计者KenThompson接受美国国家技术勋章,Ritchie和Thompson在开发UNIX,1.3简单的C程序介绍例1.1:C程序构成:1)每一个C程序都必须有一个“主函数”:函数说明:main(),括号内一般不带参数函数体:。,2)例中主函数内有一个输出语句printf是C编译系统提供的标准库函数中的输出函数,而不是C语言本身的输出函数。本例中功能为原样输出双引号内的字符串。3)“n”为换行符4)语句后带一分号5)程序运行结果:在屏幕上输出信息:Thisisacprogram.,例1.2:1)/*/表示注释部分对编译和运行不起作用,可加在程序中任何位置。2)第二行是变量定义部分3)第三行是赋值语句,运算次序自右向左。,4)“%d”是输入输出的“格式字符串”:用来指定输入输出时的数据类型和格式;表示“十进制整数类型”,在执行输出时,此位置上代以一个十进制整数值。5)printf括号内的sum是要输出的变量。6)程序运行结果:在屏幕上输出:sumis579,例1.3:1)max函数为主函数中被调用函数:求x,y中较大值赋给z。2)return语句中将z的值返回给main返回值是通过函数名max带回到main的调用处。,3)scanf是C提供的输入函数的含义为“取地址”;这里scanf的作用是将两个数值按十进制整数形式分别输入到变量a和b的地址所标志的单元中,即输入数据给a和b。,4)语句c=max(a,b):调用max函数,调用时将实际参数a,b的值分别传给形式参数x和y执行max函数后得到返回值z,将其赋给变量c.,5)程序运行时输入数据:8,5在屏幕上输出:max=8,C程序的组成和形式1.C程序是由函数构成的至少包含一个main函数,用函数来实现特定的功能。被调用函数可以是系统提供的库函数,也可以是自己编写的函数,相当于子程序概念。,2.函数由两部分组成1)函数的说明部分:包括:函数名、函数类型、函数属性、函数参数(形参)名,形参类型。函数参数可以没有。例如:例1.3中:intmax(intx,inty),2)函数体:部分,可以嵌套包括:声明部分:变量定义;执行部分:由若干语句组成有时可没有变量定义部分,有时两者都可没有(空函数)。,3.Main函数可以在程序的任一位置但C程序总是从main函数开始执行的。4.C程序书写格式自由一行内可以写几个语句一个语句可分写在多行上5.每个语句和数据定义的最后必须有一个分号,6C语言本身没有输入输出语句,输入输出由库函数来完成。7可用”/*/”对程序任一部分作注释,增加可读性。8应成对出现,格式特点习惯用小写字母,大小写敏感不使用行号,无程序行概念可使用空行和空格常用锯齿形书写格式,main().,main()inti,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);,优秀程序员的素质之一:使用TAB缩进对齐有足够的注释有合适的空行,小结,结构特点函数与主函数程序由一个或多个函数组成必须有且只能有一个主函数main()程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。程序语句C程序由语句组成用“;”作为语句终止符注释/*/为注释,不能嵌套不产生编译代码,例:/*Thisisthemain/*ofexample1.1*/*/,编译预处理命令,小结(续),1.4C程序的上机步骤编辑(Edit)上机输入与编辑源程序,扩展名为.c的文件编译(Compile)扩展名为.obj的文件链接(Link)与库函数链接形成最后的可执行文件扩展名为.exe的文件运行(Run)运行目标程序如图1.1发现错误则读程序进行修改,C程序的上机步骤:,C程序的编译环境,TurboC2.0TurboC+3.0VisualC+3.0,32keywords:definedandusedbyCautobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunsignedunionvoidvolatilewhile,这一章我们学习了,程序语言的发展简史和计算机语言的分类。C语言的发展简史及C语言的特点。计算机程序编制的步骤C语言程序的编辑、编译、链接和调试的过程难点内容:C语言的编制的全过程,作业,P131.51.61.8,
展开阅读全文