第1章言语入门基础PPT讲稿.ppt
第1章言语入门基础第1页,共33页,编辑于2022年,星期日为什么要学习C语言?第2页,共33页,编辑于2022年,星期日课前预习,课后复习掌握知识,动手编程初学编程,注意基础编程过程,注意细节第3页,共33页,编辑于2022年,星期日第1章 C语言概述第2章 程序设计的灵魂算法第3章 数据类型、运算符与表达式第4章 顺序程序设计第5章 选择结构程序设计第6章 循环结构程序设计第第7章章 数组数组第第8章章 函数函数第9章 预编译处理第第10章章 指针指针第11章 结构体、共用体与枚举第12章 位运算第13章 文件第4页,共33页,编辑于2022年,星期日第一章第一章 C语言概述语言概述本章目标本章目标1.了解C语言的发展简史与特点2.掌握C语言程序的结构与书写规则3.掌握C语言的语句和关键字4.熟悉VC+的基本操作第5页,共33页,编辑于2022年,星期日教学重点:教学难点:C C语言程序的结构与书写规则语言程序的结构与书写规则C C语言程序的上机步骤语言程序的上机步骤C C语言程序的结构与书写规则语言程序的结构与书写规则第6页,共33页,编辑于2022年,星期日lC语言的产生与发展语言的产生与发展在上个世纪七十年代以前,系统软件主要是用汇编语言编写的。但是汇编语言程序过分依赖于计算机硬件,其可读性和可移植性都很差;而一般的高级语言又难以实现对计算机硬件的直接操作,于是人们希望有一种兼有汇编语言和高级语言特性的中间语言。C语言的发展简史语言的发展简史第7页,共33页,编辑于2022年,星期日C语言的历史过程语言的历史过程lC语言的最初形成时间时间:19721973地点地点:美国贝尔实验室美国贝尔实验室目的目的:UNIX操作系统操作系统设计人设计人:Ken.Thompson和和Dennis.M.Ritchie第8页,共33页,编辑于2022年,星期日Ken.ThompsonDennis.M.Ritchie第9页,共33页,编辑于2022年,星期日第10页,共33页,编辑于2022年,星期日标准C:K&R合著The C Programming LanguageANSI C:1983年87 ANSI C:1987年1990年国际标准的ISO CC标准化过程第11页,共33页,编辑于2022年,星期日C语言的特点C语言与自然语言相比自然语言C语言信息交流(地位平等)(有思维、推理能力)人计算机对话(命令方式)(无思维、推理能力,具有计算机判断能力)语法规则、句法规则、灵活(可省略、颠倒)例:走,去晒太阳。去晒太阳,走。语法规则、句法规则固定(一般不可省略、颠倒)例:x=a+b;Scanf(“%d%d”,&a,&b);表达方式多样算法多样第12页,共33页,编辑于2022年,星期日1 1、语言简洁紧凑、方便灵活。、语言简洁紧凑、方便灵活。2 2、运算功能丰富。、运算功能丰富。3 3、数据类型丰富。、数据类型丰富。4 4、提供了结构化程序设计的控制语句。、提供了结构化程序设计的控制语句。5 5、语法结构松散。、语法结构松散。6 6、C C语言允许直接访问物理地址,直接对硬件进行操作。语言允许直接访问物理地址,直接对硬件进行操作。7 7、生成目标代码质量高,程序的执行效率高。、生成目标代码质量高,程序的执行效率高。8 8、可移植性好。、可移植性好。C语言的特点仅有32个关键字,9种控制语句。32个关键字:(由系统定义,不能重作其它定义由系统定义,不能重作其它定义)auto break case char constcontinue default do double elseenum extern float for gotoif int long register returnshort signed sizeof static structswitch typedef unsigned union voidvolatile while9种控制语句:if()else for()while()dowhile()Continue breakSwitch gotoreturn34种运算符:算术运算符:+-*/%+-关系运算符:=!=逻辑运算符:!&|位运算符 :|&赋值运算符:=及其扩展条件运算符:?:逗号运算符:,指针运算符:*&求字节数 :sizeof 强制类型转换:(类型)分量运算符:.-下标运算符:其它 :()-有整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等第13页,共33页,编辑于2022年,星期日C语言开发环境lC语言的开发环境有多种,本教程的开发环境采用语言的开发环境有多种,本教程的开发环境采用MicroSoft Visual C+6.0的开发环境,下面通过一个简单的例子,我们来学习如何创建一个的开发环境,下面通过一个简单的例子,我们来学习如何创建一个C程序,快速熟程序,快速熟悉悉Visual C+6.0的开发环境。的开发环境。l首先要在计算机上安装上首先要在计算机上安装上MicroSoft Visual C+6.0的开发软件。的开发软件。第14页,共33页,编辑于2022年,星期日(1)展开展开“开始开始-程序程序-MicroSoft Visual Studio 6.0-MicroSoft Visual C+6.0”菜单项,如图所示:菜单项,如图所示:第15页,共33页,编辑于2022年,星期日(2)在图在图1-2中单击鼠标左键,即打开图所示的中单击鼠标左键,即打开图所示的Visual C+6.0开开发工具的主窗口:发工具的主窗口:第16页,共33页,编辑于2022年,星期日(3)在上图所示的菜单栏中点击在上图所示的菜单栏中点击“文件文件新建新建”菜单项,弹出如图所示菜单项,弹出如图所示的的“新建新建”对话框,由于我们要新建一个程序文件,而不是创建一个对话框,由于我们要新建一个程序文件,而不是创建一个工程,因此,我们需要通过工程,因此,我们需要通过“文件文件”选项卡来创建一个程序文件;选项卡来创建一个程序文件;第17页,共33页,编辑于2022年,星期日(4)在上图中点击在上图中点击“文件文件”选项卡,如图所示,在列表框中选择选项卡,如图所示,在列表框中选择“C+Source File”选项,选项,在在“文件文件”下面的文本框中为程序命名,本例文件的名字为:下面的文本框中为程序命名,本例文件的名字为:“FirstPro”,在,在“C目录:目录:”中选择程序文件所在的位置,本例采用默认的位置;中选择程序文件所在的位置,本例采用默认的位置;第18页,共33页,编辑于2022年,星期日(5)在上图所示的对话框中点击在上图所示的对话框中点击“确定确定”按钮,我们就成功新建了一个名为按钮,我们就成功新建了一个名为“FirstPro.cpp”的的C程序文件,即出现如图所示的程序文件,即出现如图所示的“程序编辑器程序编辑器”窗口,窗口,这就是我们要编辑程序代码的可视化窗口,我们需要在窗口中输入程序这就是我们要编辑程序代码的可视化窗口,我们需要在窗口中输入程序代码:代码:第19页,共33页,编辑于2022年,星期日(7)程序编写完成后,我们要编译运行这个程序,以查看程序的运行结果,程序编写完成后,我们要编译运行这个程序,以查看程序的运行结果,点击点击“编译编译”菜单下的菜单下的“全部重建全部重建”菜单项(或直接点击键盘上的菜单项(或直接点击键盘上的“F7”键键),即弹出图),即弹出图1-8所示的对话框,该对话框询问:所示的对话框,该对话框询问:“当前的命令需要一个活动当前的命令需要一个活动的工程工作区,你想建立一个缺省的工作区吗?的工程工作区,你想建立一个缺省的工作区吗?”,选择,选择“是(是(Y)”按钮;按钮;第20页,共33页,编辑于2022年,星期日此后出现如图此后出现如图1-9所示的对话框,该对话框询问:所示的对话框,该对话框询问:“是否将改动保存到(创建文件时是否将改动保存到(创建文件时所设置的路径)所设置的路径)”,选择,选择“是(是(Y)”按钮;此时重建完成,可以执行程序了;按钮;此时重建完成,可以执行程序了;选择选择“是(是(Y)”第21页,共33页,编辑于2022年,星期日(8)选择选择“编译编译”菜单下的菜单下的“!执行!执行FirstPro.exe”菜单项执行程序,如图所菜单项执行程序,如图所示,或同时点击键盘上的示,或同时点击键盘上的“CTRL+F5”键来执行程序;键来执行程序;“!执行!执行FirstPro.exe第22页,共33页,编辑于2022年,星期日简单的C程序介绍例例1、仅由、仅由main()函数构成的程序函数构成的程序include void main()printf(“This is a c programn”);本程序的作用是输出以下一行信息:This is a c program./*包含头文件*/*主函数*/*输出语句*/I am a student.第23页,共33页,编辑于2022年,星期日简单的C程序介绍#include main()int a,b,sum;a=123;b=456;sum=a+b;printf(“sum=%d”,sum);例例2:求两个数之和求两个数之和.程序运行结果:sum=579/*定义变量*/*变量赋初值*/*求和*/scanf(“%d%d”,&a,&b);第24页,共33页,编辑于2022年,星期日简单的C程序介绍#include main()int a,b,c;int max(int x,int y);scanf(“%d%d”,&a,&b);/*输入变量a和b的值*/c=max(a,b);/*调用max函数,将得到的值赋给*/printf(“max is%d”,c);int max(int x,int y)/*max函数*/int z;If(xy)z=x;/*比较大小*/else z=y;return z;/*将c的值返回,通过max带回调用处*/例例3:求两个数中最大的数求两个数中最大的数.第25页,共33页,编辑于2022年,星期日C语言的结构与书写规则通过上面的几个例子可以看到:通过上面的几个例子可以看到:1、语言程序是由函数构成的、语言程序是由函数构成的 一个C源程序至少包含一个main()函数,也可以包含一个main()函数和若干个其他函数。函数是程序的基本单位。2、一个函数由两部分组成、一个函数由两部分组成函数的首部函数的首部.包括函数名、函数类型、函数参数(形参)名、参数类型.如:例3中max函数首句为 int max (int x,int y)函数类型 函数名 函数参数类型 函数参数名注注:一个函数名后面必须按必须跟一对圆括弧,函数参数可以没有,如main().第26页,共33页,编辑于2022年,星期日C语言的结构与书写规则.函数体函数体,即函数首部下面的大括弧 内的部分.如果一个函数体内有多个大括弧,则最外层的一对 为函数体范围.函数体一般包括:声明部分声明部分:在这个部分定义所用到的变量.执行部分执行部分:由若干语句组成.3、一个、一个C程序总是从程序总是从main()函数处开始执行的函数处开始执行的,而不论 main()函数在整个程序中位置如何(main函数可以放在程序的最 前头,也可以放在程序最后或者在一些函数之前,一些函数之后).4、C程序书写格式自由程序书写格式自由,一行可以写几个语句,一个语句可以写在多行上.第27页,共33页,编辑于2022年,星期日6、C语言本身没有输入输出语句语言本身没有输入输出语句,输出输出的操作由库函数输出输出的操作由库函数scanf与与printf函数来完成的函数来完成的.5、每个语句和数据的定义的最后必须有一个分号、每个语句和数据的定义的最后必须有一个分号.分号是C语句的必要组成部分.如:C=A+B;注:分号不可少.即使程序最后一个语句也要包含分号.C语言的结构与书写规则7、可以用、可以用/*/对程序中的任何部分做注释对程序中的任何部分做注释.第28页,共33页,编辑于2022年,星期日C语言程序的其他特点语言程序的其他特点lC语言程序还有以下特点:格式特点格式特点:不使用行号,无程序行概念不使用行号,无程序行概念可使用空行和空格可使用空行和空格常用锯齿形书写格式常用锯齿形书写格式注释注释l/*/为注释为注释,不能嵌套不能嵌套l不产生编译代码不产生编译代码优秀C程序员的必备格式:l使用TAB缩进l对齐l有足够的注释l有合理的空行void main()int i,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i+j;printf(“%dn”,sum);第29页,共33页,编辑于2022年,星期日结构特点l函数与主函数程序由一个或多个函数组成必须有且只能有一个主函数main()程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。l程序语句C程序由语句组成用“;”作为语句终止符l注释/*/为注释,不能嵌套不产生编译代码例:/*This is the main /*of example1.1*/*/非法l编译预处理命令C语言的结构与书写规则第30页,共33页,编辑于2022年,星期日一、运行一个语言程序的一般过程一、运行一个语言程序的一般过程一、运行一个语言程序的一般过程一、运行一个语言程序的一般过程编辑链接编译执行程序代码的录入,生成源程序*.c语法分析查错,翻译生成目标程序*.obj与其它目标程序或库链接装配,生成可执行程序*.exe第31页,共33页,编辑于2022年,星期日本章总结本章总结C语言概述与发展C语言的特点简单的C语言程序C语言的结构及书写规则C语言开发环境-Visual C+6.0的使用第32页,共33页,编辑于2022年,星期日1、上机运行本章的3个例题,熟悉所用系统的上机方法与步骤。2、给大家一个小项目体验一下,上机操作并写作业本上(统计一个软件公司09年的销售总收入)第33页,共33页,编辑于2022年,星期日