《C语言第1章和第2章.ppt》由会员分享,可在线阅读,更多相关《C语言第1章和第2章.ppt(38页珍藏版)》请在三一办公上搜索。
1、C语言程序设计,第一章 引 言,程序设计语言的发展,CPU指令系统,由0、1序列构成的指令码组成如:10000000 加 10010000 减,用助记符号描述的指令系统如 ADD A,B,程序设计是数据被加工的过程,客观世界可以分类,对象是类的实例对象是数据和方法的封装,程序设计关键是定义类,并由类派生对象,C语言程序设计 第一章 C语言概述,c语言出现的历史背景,Algol 60 1960年CPL(Combined Programing Language)1963年BCPL(Basic Combined Programing Language)1967年B语言 1970年 1978年Bria
2、n W.Kernighan和Dennis M.Ritche合著了 The C Programming Language即标准C 1983年,ANSI制定标准,1987年公布新的标准。,1.1 C语言特点语言简洁、紧凑、灵活 c语言共32个关键字,9种控制语句运算符和数据类型丰富程序设计结构化允许直接访问物理地址,进行位操作生成目标代码质量高可移植性好,C语言程序设计 第一章 C语言概述,32个关键字:(由系统定义,不能重作其它定义)auto break case char constcontinue default do double elseenum extern float for got
3、oif int long register returnshort signed sizeof static structswitch typedef unsigned union voidvolatile while,C语言程序设计 第一章 C语言概述,9种控制语句:if()elsefor()while()dowhile()continuebreakswitchgotoreturn,C语言程序设计 第一章 C语言概述,例 C语言与Pascal语言比较C语言 Pascal语言 含义 BEGIN.END 复合语句if(e)s;IF(e)THEN s 条件语句int i;VAR i:INTEGER
4、 定义i为整型变量 int a10;VAR a:ARRAY1.10 OF INTEGER 定义整型数组aint f();FUNCTION f():INTEGER 定义f为返值整型的函数int*p;VAR p:INTEGER 定义p为指向整型变量的指针i+=2;i=i+2 赋值i+2ii+,+i;i=i+1 i自增值结论:C比 Pascal简练,源程序短。,C语言程序设计 第一章 C语言概述,34种运算符:算术运算符:+-*/%+-关系运算符:=!=逻辑运算符:!&|位运算符:|&赋值运算符:=及其扩展条件运算符:?:逗号运算符:,指针运算符:*&求字节数:sizeof强制类型转换:(类型)分量
5、运算符:.-下标运算符:其它:()-,C语言程序设计 第一章 C语言概述,C数据类型,基本类型,构造类型,指针类型,空类型void,定义类型typedef,数值类型,字符类型char,枚举类型enum,整 型,浮点型,单精度型float,双精度型double,短整型short,长整型long,整型int,数组,结构体struct,共用体union,第一章 C语言概述,1.2 简单的C语言程序介绍例1.1 第一个程序 Hello,World!,#include main()printf(“Hello,World!/n”);,第一章 C语言概述,输出:Hello,World!,例1.2,#incl
6、ude#include main()double x,s;printf(”input number:”);scanf(“%lf”,C语言程序设计 第一章 C语言概述,#include 文件包含命令,2.math.h stdio.h 头文件,例1.3,#include int add(int x,int y);main()int a,b,c;printf(”please input value of a and b:n”);scanf(“%d%d”,运行结果:12 22sum=34,C语言程序设计 第一章 C语言概述,一个c语言程序的基本组成:1.文件包含部分2.预处理部分#define x 5
7、3.变量说明部分4.函数原型说明部分5.主函数部分6.函数定义部分,C语言程序设计 第一章 C语言概述,1.3 c语言程序的结构,函数与主函数程序由一个或多个函数组成必须有且只能有一个主函数main()程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。程序语句C程序由语句组成用“;”作为语句终止符,编译预处理命令,C语言程序设计 第一章 C语言概述,格式特点习惯用小写字母,大小写敏感不使用行号,无程序行概念可使用空行和空格常用锯齿形书写格式,C语言程序设计 第一章 C语言概述,main().,main()int i,j,sum;sum=0;for(i=1;i10;i+)f
8、or(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);,1.4 C程序设计语言的执行C程序开发步骤,C语言程序设计 第一章 C语言概述,程序代码的录入,生成源程序*.c,语法分析查错,翻译生成目标程序*.obj,与其它目标程序或库链接装配,生成可执行程序*.exe,C语言程序设计 第一章 C语言概述,Turbo C集成开发环境配置要求UNIX,PC-DOS,MS-DOS,UCDOS操作系统硬盘容量约2M,448K RAM运行空间安装Turbo C创建子目录Install若不是可安装盘,将文件拷贝到对应的目录下,C语言程序设计 第一章 C语言概述,进入Turbo CD
9、:TCTC.exe主控菜单文件操作FILE:New Load Save Write to编辑操作EDIT:插入/修改 块 查找/替换编译链接COMPILE LINK MAKE执行RUN退出Turbo CAlt+xAlt+F,Q帮助HelpF1Ctrl+F1,C语言程序设计 第一章 C语言概述,基本操作:F10-调用主菜单F2-存盘F3-打开Alt+F9-CompileCtrl+F9-RunAlt+F5-User Screen,常用热键,C语言程序设计 第一章 C语言概述,Vc6.0 常用工具:,第二章 程序的简单算法确定,1.算法的概念与举例,为解决一个问题而采取的方法和步骤,称为算法(Alg
10、orithm)。例如,学生去上课的算法是:先把教科书、笔记本、笔放进书包;按时找到教室;坐下听课;下课,收拾教科书、笔记本、笔;凡事都有算法,存在算法的设计问题。,下面通过几个简单例子,,例2.1 有甲、乙两个杯子,甲杯盛满糖水,乙杯盛满盐 水,要求将甲、乙两杯中的溶液互换,写出其算法。显然,要借助第三个杯子(记为丙杯,称为工作杯)具体步骤如下:,S1:将甲杯中的溶液倒入丙杯中。甲-丙 S2:将乙杯中的溶液倒入甲杯中。乙-甲 S3:将丙杯中的溶液倒入乙杯中。丙-乙,思考题:请写出将A、B两单元中的数据进行交换的算法。这一算法在以后的编程实际中经常遇到,请读者务必掌握。,例22 从键盘上输入3个
11、数,找出其中最小的那个数 具体步骤如下:S1:输入三个数 保存在a,b,c中;S2:把a与b较小的那个数放入变量min中-如果 ab min=a,否则min=b;S3:把c与min较小的那个数放入变量min中;-如果 cmin min=c;S4:输出最后结果min;,例2.3 统计1001至2000年中闰年的数目。判断闰年的条件(1)能被4整除,但不能被100整除的年份是闰年;(2)或者能被400整除的年份也是闰年。,设y代表年份,n代表闰年的数目,则算法可表示为:S1:1001=yS2:0=nS3:若y能被4整除,但不能被100整除,则n+1=n,然后转S5;否则,执行下一步。S4:若y能被
12、400整除,则n+1=n。S5:y+1=yS6:当y2000时,转S3;否则,执行下一步。S7:打印输出结果n,算法结束。,缺点:此算法复杂,不直观,三、算法的表示 有多种方法,主要有:自然语言,流程图,N-S图,PAD图,1 用自然语言表示算法。其优点是通俗易懂,缺点是 文字冗长,且容易出现二义性,也不便于表示分支 和循环的算法。2 用流程图表示算法。用流程图表示算法就是利用 某些图框来表示各种操作,它形象直观,容易理解。3 用N-S图,即结构化流程图表示算法。这种流程图完全取消了带箭头的流程线,全部算法 写在一个矩形框内,矩形框是由顺序、选择、循环 三种基本结构组成的。,结构化程序设计由三
13、种基本结构组成(顺序、选择、循环)。由三种基本结构组成的算法称为结构化算法。,流程图,条件,A,T,F,a 单分支选择结构,a执行顺序为:先判断条件,当条件为真时,执行A,否则什么也不执行。,b的执行顺序为:先判断条件,当条件为真时,执行A,否则执行B。,三循环结构,循环结构是在某个条件为真的情况下,重复执行某个框中的内容。循环结构有两种基本形态:while型循环和do_while型循环。,while型(当型)循环的流程图 while型循环的执行顺序为:重复判断条件、如果条件为真则执行A,一但条件为假,则跳出循环。,do-while(直到型)型循环的流程图 do_while型循环的执行顺序为:先执行A,再判断条件,若条件为真则重复执行A,一但条件为假,则跳出循环。,while型循环的流程图 do_while型循环的流程图,A被称为循环体,条件被称为循环控制条件。,开始,输出min,ab,min=a,cmin,输入a,b,c,结束,min=b,min=c,、流程图,F,T,T,F,、N-S图,1 顺序结构,见下面左图。2 选择结构,见下面右图。A P B 成立 不成立 A B 3 循环结构。所谓循环,就是根据某一条件成立与否来决定是否重复执行某一部分的操作。当P成立时 A A 直到P成立止 While 型 Untile 型,、PAD图,1 顺序结构,2 选择结构,、PAD图,