第二章C语言程序设计本章要点C语言的特点C语言的发展历史C程序的结构在计算机上运行C程序的方法大连理工大学共18页第3页2.1C语言的发展历史•C语言是国际上广泛流行的高级语言。•1963年,剑桥,CPL语言,更近硬件,但规模大,难以实现.•1967年,剑桥,MartinRichards,简化,BCPL语言.•1970年,美国贝尔实验室,KenThompson,简化,B语言,写第一个UNIX系统.•1972~1973年,贝尔实验室,D.M.Ritchie,B语言基础上,设计出C语言,克服B语言的过于简单、功能有限的不足.•1973年,K.Thompson和D.M.Ritchie合作将UNIX的90%以上用C改写.•1978年以后,C语言已先后移植到大、中、小、微型机上已独立于UNIX和PDP,得以广泛应用。DennisM.Ritchie:1967年加入贝尔实验室。他和KenL.Thompson两人共同设计并实现了C语言,改变了程序设计语言发展的轨迹,是程序设计语言发展过程中的一个重要里程碑。与此同时,他们两人还设计并实现了UNIX操作系统。正是由于这两项巨大贡献,DennisM.Ritchie于1983年获得了计算机界的最高奖——图灵奖。此外,他还获得了ACM、IEEE、贝尔实验室等授予的多种奖项。BrianW.Kernighan:是贝尔实验室计算科学研究中心高级研究人员,著名的计算机科学家。他参加了UNIX系统、C语言、AWK语言和许多其他系统的开发,同时出版了许多在计算机领域具有影响的著作。C语言的产生和地位原书名:TheCProgrammingLanguage作者:(美)BrianW.Kernighan,DennisM.Ritchie本书原著即为C语言的设计者之一DennisM.Ritchie和著名的计算机科学家BrianW.Kernighan合著的一本介绍C语言的权威经典著作。在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用如此广泛。它已经成为全球程序员的公共语言,并由此诞生了两个新的主流语言C++与Java,它们都建立在C语言的语法和基本结构的基础上。现在世界上的许多软件都是在C语言及其衍生的各种语言的基础上开发出来的。共18页第7页2.2C语言的特点为什么学习C语言?可进行内存物理地址访问,具有汇编语言的特点控制流程结构化,以函数为基本结构进行流程控制语言简洁灵活,有32个关键字和9种控制语句具有构造数据类型的能力,数据结构系统化语言表达能力强:34种运算符程序运行效率高,易读性、可移植性好语法检查不够严格,对数组下标越界不做检查共18页第8页2.3C语言程序的组成结构例1:/*显示“Howareyou!”*/#includestdio.hmain(){printf(Howareyou!);}说明:程序运行结果是输出:Howareyou!共18页第9页例2求两数之和#includestdio.hmain()/*求两数之和*/{inta,b,sum;/*定义变量为整型*/a=123;/*变量赋值*/b=456;sum=a+b;/*求和*/printf(″sumis%d\n″,sum);}说明:/*……*/表示注释。注释只是给人看的,对编译和运行不起作用。所以可以用汉字或英文字符表示,可以出现在一行中的最右侧,也可以单独成为一行。说明:输出一行信息:sumis579共18页第10页例3:从键盘输入两个整数,并显示这两个整数之和。intADDxy(inta,intb){intc;c=a+b;return(c);}main(){intx,y,z;scanf(“%d%d”,&x,&y);z=ADDxy(x,y);printf(“sum=%d\n”,z);}主函数子函数•程序运行情况如下:•85↙•sum=13共18页第11页C程序的基本结构小结:(1)C程序是由函数构成的,程序容易实现模块化。main()/*主函数说明*/{变量定义/*主函数体*/执行语句组}子函数名1(参数)/*子函数说明*/{变量定义/*子函数体*/执行语句组}子函数名2(参数)/*子函数说明*/{变量定义/*子函数体*/执行语句组}共18页第12页(2)一个函数由两部分组成:函数的首部:例3中的Addxy函数首部intAddxy(intx,inty)函数体:花括号内的部分。若一个函数有多个花括号,则最外层的一对花括号为函数体的范围。共18页第13页(3)C程序总是从main函数开始执行的,与main函数的位置无关。(4)C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上,C程序没有行号。(5)每个语句和数据声明的最后必须有一个分号。(6)C语言本身没有输入输出语句。输入和输出的操作是由库函数scanf和printf等函数来完成的(7)在C语言中,大小写字母是有区别的。(C语言习惯用小写字母)(8)书写程序时,最好使用规范的缩进格式的形式。(9)C程序注释/*……*/可以写在程序的任何位置上。共18页第14页2.4运行C程序的步骤和方法1.运行C程序的步骤•上机输入、编辑源程序•对源程序进行编译•与库函数连接•运行目标程序共18页第15页2.C程序的开发环境目前使用的大多数C编译系统都是集成环境的。可以用不同的编译系统对C程序进行操作常用的有TurboC2.0、TurboC++3.0、VisualC++等TurboC++3.0:是一个集成环境,它具有方便、直观和易用的界面,虽然它也是DOS环境下的集成环境,但是可以把执行文件tc.exe生成快捷方式放在Windows桌面上,可以支持鼠标操作。VisualC++6.0:可视化面向对象开发环境,可以用VisualC++对C程序进行编译。共18页第16页2.5从三个方面学习C语言1.学习C语言的语法数据表达:变量定义、正确书写表达式流程控制:if(ab)x=a;elsex=b;sum=0;i=1;while(i=5){sum=sum+i;i=i+1;}for(i=1;sum=0;i=5;i++)sum=sum+i;设计函数输入和输出共18页第17页2.学习解决问题的方法(算法)如何求级数12+22+32+……前100项之和?635241654321ba,矩阵转置如何打印乘法表?数据如何按从小到大的顺序排序?共18页第18页3.学习在C语言编程环境下,编辑、编译、调试和运行程序开发环境:VisualC++6.0