第一章 绪论 中国石油大学.ppt
1,CProgrammingLanguage,,程序设计语言(C),2,,,姓名于广斌,,单位计算机应用技术系,Emailyugb,,,,,Web,,,3,大学怎样读将自己培养成什么样的人才有所考虑吗,就要毕业了。回头看自己所谓的大学生活,我想哭,不是因为离别,而是因为什么都没学到。我不知,简历该怎么写,这封来信道出了不少大四学生的心声。大学期间,有许多学生放任自己、虚度光阴,还有许多学生始终也找不到正确的学习方向。当他们被第一次补考通知唤醒时,当他们收到第一封来自应聘企业的婉拒信时,这些学生才惊讶地发现,自己的前途是那么渺茫,一切努力似乎都为时已晚,大学四年应该这么度过,帮助青年学生健康成长,4,课程目标,理解算法、流程图以及程序的概念,培养算法分析与设计能力理解程序逻辑,掌握用C语言进行程序设计的基本方法掌握C语言的基础知识,包括基本数据类型、表达式、控制结构等掌握C语言的高级知识,包括数组、指针、函数、字符串、结构体等培养程序阅读和编写能力,培养程序调试和纠错能力,5,教材、参考书及课时安排,教材C程序设计语言魏东平等编著电子工业出版社参考书TheCprogrammingLanguageBrianW.KernighanandDennisM.RitchieC程序设计(第三版)谭浩强清华大学出版社从问题到程序裘宗燕机械工业出版社程序设计基础(第2版)吴文虎清华大学出版社C语言大学实用教程(第2版)苏小红电子工业出版社课时安排授课32学时,6,上课要求,准备一个练习册,课堂练习用注意听讲,有问题可以随时问,第1章C语言概述,8,教学目标,了解C语言的发展历史掌握C程序编辑、编译及运行的过程掌握一种C程序的集成开发环境的使用,9,日常生活中的程序,,,银行,带上存折去银行,3.将存折递给银行职员,告诉所取金额,2.到相应窗口排队,4.银行职员办理取款事宜,5.拿到钱并离开银行,10,计算机中的程序,,什么是指令,做口述笔记键入信函的内容发送传真,口述,2.信函,,,,,_____________________________________________________,3.传真,指令被逐条执行,程序员,老板,秘书,程序为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合,要执行的一组指令,程序,,11,算法,计算长方形的面积,问题,1.接收用户输入的长方形长度和宽度两个值;2.判断长度和宽度的值是否大于零;3.如果大于零,将长度和宽度两个值相乘得到面积,否则显示输入错误;4.显示面积。,,算法,算法解决问题的具体方法和步骤,12,程序设计语言,计算机能读懂的语言机器语言(MachineLanguage)由一系列二进制0和1组成机器语言编写的11程序低级语言,101110000000000100000000000001010000000100000000,像不像天书,13,程序设计语言,PRINT11,结果显示在屏幕上,includeintmainvoid{printf“d\n“,11;return0;},程序设计语言(programminglanguage)BASIC语言编写的11程序C语言编写的11程序既不是英语,也非机器语言但更像英语高级语言比写机器语言程序容易,但比使用英语难,14,程序设计语言排行(2010年2月),,15,程序员,编写程序源代码(SourceCode)的人程序员(Programmer)计算机、程序员、程序之间的关系如果计算机是乐队,那么程序员就是指挥家,程序就是乐谱。如果计算机是军队,那么程序员就是总司令,程序就是作战计划。,16,怎样让计算机读懂高级语言,编译器(Compiler)把源代码转换为可被计算机理解的机器代码把机器代码以可执行文件(cutableFile)的形式保存在磁盘上一种程序设计语言对应一种编译器,17,怎样让计算机读懂高级语言,,程序员按照该语言的语法编写程序源代码把自己的意图写入源代码中编译器读入源代码把程序员的意图转换成可执行程序,供他人使用,,C语言,,可执行程序,编译器,18,怎样让计算机读懂高级语言,程序设计语言是人与计算机进行交流的语言有很多种,分别适合做不同的事情现在人还只能主动学计算机的语言做不到计算机学会人的语言当计算机懂了人的自然语言,就几乎不再需要编程,想让计算机干什么,尽管对着它说好了,那时程序员可能也就失业了。,19,程序是如何运行的,计算机把机器代码读入到内存(Memory)由CPU运行这些代码读取输入()产生输出(Output)完成程序员预定的功能后续计算机相关课程数据结构计算机原理编译原理操作系统数据库,20,C语言简介,20世纪60年代,贝尔实验室,KenThompson开始开发一个叫做UNIX的操作系统70年代,将BCPL语言改造成更适合开发UNIX的B语言1971年,DennisM.Ritchie开始和Thompson合作开发UNIX,将B语言改造成C语言,21,http//www.cs.bell-,Cisquirky,flawed,andanenormoussuccess.,C语言的祖师爷,22,和Unix的设计者KenThompson接受美国国家技术勋章,23,C语言特点,编程语言,,,低级,,高级,,C,C语言是贝尔实验室的DennisRitchie在1973年设计的。,C最初用于开发系统级程序。,在微机上,有许多性能良好的商品C语言系统可用。包括TurboC、BorlandC/C;MicrosoftVisualC/C;CodeBlocks等。,结构化的程序设计语言层次清晰,便于按模块化方式组织程序,易于调试和维护,语句简洁学习时入门相对容易,C语言很好地总结了其他语言提出的程序库概念,功能强大既可用于系统软件的开发,也适合于应用软件的开发。,移植性好只要对这种语言稍加修改,便可以适应不同型号机器或各类操作系统。,特点,24,C语言基本结构,includeintmainvoid{printf“HelloWorld\n“;return0;},,以开始的语句称为预处理器指令,如果程序有该语句,就必须将它放在程序的开始处,,以.h为后缀的文件被称为头文件,可以是C程序中现成的标准库文件,也可以是自定义的库文件。,stdio.h文件中包含了有关输入输出语句的函数,,main函数是C程序处理的起点。,main函数可以返回一个值,也可以不返回值。如果某个函数没有返回值,那么在它的前面有一个关键字void,,在函数定义的后面有一个左大括号,即{,它表示函数的开始,后面是函数的主体,大括号也可以用于将语句块括起来,,在函数定义的结尾处有一个右大括号,即},,在屏幕上产生一行输出“Helloworld”,并换行(\n),函数主体中的每个语句都以分号结束。,C程序中的一个语句可以跨越多行,并且用分号通知编译器该语句已结束。,,25,C程序的注释,includeintmainvoid{printf“HelloWorld\n“;return0;},//此程序用来打印HelloWorld,,单行注释,C程序可以包含注释,以便向读者作一般说明,编译器并不处理这些注释,/*此程序由编写*用来打印输出“HelloWorld”*/,多行注释,,/**************************作者创建日期描述***************************/includeintmainvoid{},,注释,在程序中添加注释是一个好的编程习惯,可以增强程序的可读性。,26,程序开发步骤,,Whatistobedone,可执行文件扩展名为.的文件,Howisittobedone,扩展名为.c的文件(对C而言),扩展名为.obj的文件,,,编译中发现错误,转回修改源程序,,,连接中发现错误,转回修改源程序,,,调试运行中发现问题,表明分析本身有错误,重新分析问题,27,Windows下集成开发环境(IDE),免费TurboCWinTCDevCCodeBlocksEclipseCDT付费MicrosoftVisualC6.0BorlandCBuilder,28,总结,算法就是解决问题的具体方法与步骤程序是为让计算机完成某项任务而编写的逐条执行的指令序列C语言的特点包括结构化的程序设计语言、语句简洁、功能强大、移植性好C程序的基本结构包括预处理语句、main函数,main函数中的内容使用{}括起来,每条语句必须用分号结束C程序编写完成后,首先需要通过编译转换成目标文件,然后通过连接创建可执行程序,最后才可以执行该程序可以使用VisualC6.0编辑和运行C程序,29,Thankyou,Question,