《C语言课件 第1章 概述.ppt》由会员分享,可在线阅读,更多相关《C语言课件 第1章 概述.ppt(65页珍藏版)》请在三一办公上搜索。
1、程序设计基础,C程序设计,舒玉,课前做好预习做好课程笔记保持课堂安静,思维活跃,积极回答问题认真、独立、按时完成并提交作业重视上机实践,有效利用宝贵的上机时间作业必须经上机调试通过,课程要求,本课程对学生的要求,请勿迟到和早退 进行必要的预习、认真听课和作必要的笔记 课后请及时复习 请勿在教室吃东西和乱丢纸屑 认真按时完成上机练习与上机作业,不允许请人代做或代他人做作业,不允许直接抄袭他人的作业作业要写在笔记本上,上机时用红笔写错。提倡在上机练习时互相帮助,最大限度利用Internet协作学习,包括利用Web论坛、专题组、BBS和QQ等互助与讨论,以及留下您的建设性意见,教材内容剖析,C程序设
2、计教程,程序的组织,基本数据类型和表达式,基本流程结构,高级数据类型,3、4、5,7,2,6、8、9,第1章 C语言概述,文件,10,C语言主要内容剖析,程序和程序设计语言,?,什么是程序?什么是程序设计语言?,“日常程序”实例,学生早上起床后的行为:1.起床2.刷牙3.洗脸4.吃饭5.上课,特点:简单、顺序形、直线形,“日常程序”实例,到图书馆借教学参考书:1.进入图书馆2.查书目3.填写索书单4.交图书馆工作人员取书5.如果该书已借出,可以有两种选择5.1回到第2步(进一步查找其他参考书目)5.2放弃借书,离开图书馆6.(找到要借的书)办理借书手续7.离开图书馆,特点:复杂、非平铺直叙,程
3、序的概念,什么是程序?工作(事务、活动)过程的细节动作描述就是一个程序。人们为解决某种问题用计算机可以识别的代码编排的一系列加工步骤。程序的执行过程实际上是对程序所表达的数据进行处理的过程。计算机因“程序”而“神奇”正是各种各样的程序让计算机具有了“聪明”与“智慧”,让它能够完成各种不同的工作。,日常程序 计算机程序,执行者:人描述:自然语言基本动作:一句话,执行者:计算机描述:程序设计语言基本动作:一条指令,程序设计语言,概念 为了与计算机交流,指挥计算机工作,所使用的描述计算机程序的语言。提供了一种表达数据与处理数据的功能要求程序员按照语言的规范编程特点“人造”语言,不仅人懂得,计算机也“
4、懂得”它。,程序设计语言的发展,机器语言汇编语言高级语言,计算 a x b+c,00000000100000010000将单元1000的数据装入寄存器000000000100000100010将单元1010的输入装入寄存器100000010100000000001将寄存器1的数据乘到寄存器0的原有数据上00000001001000000100将单元1100的输入装入寄存器100000100000010000011将寄存器1的数据加到寄存器0的原有数据上00000010000000111000将寄存器0里的数据存入单元1110,Load 0 a 将单元a的数据装入寄存器0Load 1 b 将单元
5、b的数据装入寄存器1Mult 0 1 将寄存器1的数据乘到寄存器0的原有数据上Load 1 c 将单元c的数据装入寄存器1Add 0 1 将寄存器1的数据加到寄存器0的原有数据上save 0 d 将寄存器0里的数据存入单元d,d=a*b+c;,机器语言,汇编语言,高级语言,高级语言,常规的Fortran、C+、Pascal、Java等非常规Lisp、SmallTalk、Prolog、ML等,C,思考:为什么要学习C语言,而不是其它高级语言?,?,关于描述程序,程序的基本指令有哪些?因语言而异对描述语言的要求有哪些?精确、无歧义程序的细节分解到那个层次合适?高层描述,根据需求分解,有利于理解程序
6、细节有利于发现程序中的错误易于根据需要修改,编程应该从问题的需求出发,从高层开始设计程序,并逐步分解程序的功能。,优点:,结论:,返回,思考:计算机只懂机器语言,那高级语言计算机如何懂呢?,?,编程语言的加工、处理,机器语言汇编语言高级语言,高级语言系统,编译 编写源程序,由翻译软件翻译,再命令计算机执行解释 编写源程序,交给运行着解释软件的计算机,即可边解释边执行。,C程序的加工和执行,C源程序,目标模块,可执行程序,编译,连接,运行系统,C语言函数库,编写源程序编译连接执行,例1.1 第一个程序 Welcome!,/*example1.1 The first C Program*/#inc
7、lude main()printf(“Welcome!”);,输出:Welcome!,1.3 C程序格式和结构特点,例1.2,/*example1.1 calculate the sum of a and b*/#include/*This is the main program*/main()int a,b,sum;a=10;b=24;sum=add(a,b);printf(”sum=%dn,sum);/*This function calculates the sum of x and y*/int add(int x,int y)int z;z=x+y;return(z);,运行结果:s
8、um=34,习惯用小写字母,大小写敏感不使用行号,无程序行概念可使用空行和空格常用锯齿形书写格式,main().,main()int i,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);,优秀程序员的素质之一:使用TAB缩进对齐有足够的注释有合适的空行,格式特点,main()/*定义变量*/inti;/*xxxxx*/intj;/*xxxxx*/intsum;/*xxxxx*/*初始化变量*/sum=0;/*开始处理*/for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;prin
9、tf(“%dn”,sum);,main()int i,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);,难读易错不规范,函数与主函数程序由一个或多个函数组成必须有且只能有一个主函数main()程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。程序语句C程序由语句组成用“;”作为语句终止符注释/*/为注释,不能嵌套不产生编译代码,例:/*This is the main/*of example1.1*/*/,编译预处理命令,结构特点,1.4 C程序的上机步骤C程序开发步骤,file.e
10、xe,程序代码的录入,生成源程序*.c,语法分析查错,翻译生成目标程序*.obj,与其它目标程序或库链接装配,生成可执行程序*.exe,内容总结,回顾本章主要介绍的内容:,?,什么是程序什么是程序设计语言高级语言的实现 C语言的加工处理C程序集成开发环境VC+6.0 或Turbo C,重点,理解,作业,1、熟悉C上机步骤2、实验一3、预习第二章内容,集成开发环境,返回,集成开发环境,1、启动Turbo C(上机课演示)2、如何用键盘操作菜单3、编辑源程序4、保存程序5、程序编译与连接6、运行程序7、退出Turbo C,如何用键盘操作菜单,热键 窗口上方的下拉菜单中,都有一个字母为红色,如Fil
11、e中的F,Edit中的E等都称为菜单的热键。按住【Alt】键和热键来打开菜单。F10 先按【F10】键激活菜单,此时可以看到File菜单为高亮状态,再通过方向键移动高亮的亮条来选择菜单项。,参见环境,编辑源程序,启动TC后,在File菜单中,使用方向键移动亮条到“New”,按回车创建新文件,此时就可以在编辑窗口中输入程序代码。,/*example1.1 The first C Program*/#include void main()printf(“This is a C program.n”);,返回,保存程序,按【F10】键激活菜单,选择File菜单下的Save命令,此时弹出窗口提示输入文
12、件的名字,窗口中是默认的文件名路径,删掉默认的C文件名字“NORMAL.C”输入“TC1-1.C”,程序编译与连接,按【F10】键激活菜单,选择Compile下的Make EXE File,或者 按快捷键【F9】,运行程序,按【F10】键激活菜单,选择Run菜单下的Run菜单项,或按【CtrlF9】,可以看到屏幕闪了一下,此时程序已执行完毕。按【F10】键激活菜单,选择Run菜单下的User Screen,即可看到以下的运行结果。,退出Turbo C,查看完结果后,按【回车】键返回编辑窗口,此时再选择“File”菜单下的“Quit”;或者按【AltX】即可退出Turbo C。,基本操作:F10
13、-调用主菜单F2-保存文件(Save)F3-打开文件(Load)F9-编译和连接(Make EXE File)Ctrl+F9-执行(Run)Alt+F5-查看执行后的结果(User Screen),文本编辑(和word类似),窗口操作:F6-编辑窗口和消息窗口切换,常用快捷键,学生早上起床后的行为:1.起床2.刷牙3.洗脸4.吃饭5.上课,到图书馆借教学参考书:1.进入图书馆2.查书目3.填写索书单4.交图书馆工作人员取书5.如果该书已借出,可以有两种选择 5.1回到第2步(进一步查找其他参考书目)5.2放弃借书,离开图书馆6.(找到要借的书)办理借书手续7.离开图书馆,顺序结构,选择结构,返
14、回,课程的目标,程序设计方法程序语言规范动手编程能力等级考试证书,程序就是一系列的操作步骤,计算机程序就是由人事先规定的计算机完成某项工作的操作步骤。每一步骤的具体内容由计算机能够理解的指令来描述,这些指令告诉计算机“做什么”和“怎样做”。,二、程序设计语言的概念,编写计算机程序所使用的语言称为程序设计语言。,一、程序的概念,高级语言是相对低级语言而言的。低级语言是计算机能直接识别的语言(机器语言)或符号化的机器语言(汇编语言),高级语言是一种通用的,面向用户的各类需要,与特定的机器相分离,并遵循一定的严格规定与形式的语言,其语言格式接近于自然语言或接近于数学函数形式。,高级程序设计语言(简称
15、高级语言),C语言程序设计基础目录,第6章 循环控制第7章 数组第8章 函数第10章 指针第11章 结构体与共用体,第1章 C语言概述第2章 程序的灵魂-算法第3章 数据类型、运算符 与表达式第4章 顺序程序设计第5章 选择结构程序设计,第一章 C语言概述,程序设计语言的发展,机器语言,汇编语言,高级语言,CPU指令系统,由0、1序列构成的指令码组成如:10000000 加 10010000 减,用助记符号描述的指令系统如 ADD A,B,面向机器的语言,1.1 C语言发展历史,高级语言是一种通用的,面向用户的各类需要,与特定的机器相分离,并遵循一定的严格规定与形式的语言,其语言格式接近于自然
16、语言或接近于数学函数形式。,Ada,ALGOL60,ALGOL68,Pascal,Modula-2,CPL,BCPL,B,C,C+,Java,LISP,PROLOG,COBOL,FORTRAN77,FORTRAN,PL/1,Simula 67,Smalltalk 80,BASIC,ANSI-BASIC,QBASIC,VB,FORTRAN90,产生背景产生过程时间:19721973地点:美国贝尔实验室目的:UNIX操作系统设计人:Ken.Thompson和Dennis.M.RitchieC标准标准C:K&R合著The C Programming LanguageANSI C:1983年87 AN
17、SI C:1987年1990年国际标准的ANSI C,C语言发展过程,C语言产生背景,系统软件,汇编语言,高级语言,可读性差,可移植性差,难于实现汇编语言的功能,结合高、低级语言优点于一身=C语言,语言简洁、紧凑、灵活运算符和数据类型丰富程序设计结构化、模块化生成目标代码质量高可移植性好,1.2 C语言特点,(由系统定义,不能重作其它定义)auto break case char constcontinue default do double elseenum extern float for gotoif int long register returnshort signed sizeof
18、 static structswitch typedef unsigned union voidvolatile while,32个关键字,if()elsefor()while()dowhile()continuebreakswitchgotoreturn,9种控制语句,C语言 Pascal语言 含义 BEGIN.END 复合语句if(e)s;IF(e)THEN s 条件语句int i;VAR i:INTEGER 定义i为整型变量 int a10;VAR a:ARRAY1.10 OF INTEGER 定义整型数组aint f();FUNCTION f():INTEGER 定义f为返值整型的函数
19、int*p;VAR p:INTEGER 定义p为指向整型变量的指针i+=2;i=i+2 赋值i+2ii+,+i;i=i+1 i自增值结论:C比 Pascal简练,源程序短。,C语言与Pascal语言比较,算术运算符:+-*/%+-关系运算符:=!=逻辑运算符:!&|位运算符:|&赋值运算符:=及其扩展条件运算符:?:逗号运算符:,指针运算符:*&求字节数:sizeof强制类型转换:(类型)分量运算符:.-下标运算符:其它:()-,34种运算符,C数据类型,例1.1 第一个程序 Hello,World!,/*example1.1 The first C Program*/#include mai
20、n()printf(“Hello,World!”);,输出:Hello,World!,1.3 C程序格式和结构特点,例1.2,/*example1.1 calculate the sum of a and b*/#include/*This is the main program*/main()int a,b,sum;a=10;b=24;sum=add(a,b);printf(”sum=%dn,sum);/*This function calculates the sum of x and y*/int add(int x,int y)int z;z=x+y;return(z);,运行结果:s
21、um=34,习惯用小写字母,大小写敏感不使用行号,无程序行概念可使用空行和空格常用锯齿形书写格式,main().,main()int i,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);,优秀程序员的素质之一:使用TAB缩进对齐有足够的注释有合适的空行,格式特点,main()/*定义变量*/inti;/*xxxxx*/intj;/*xxxxx*/intsum;/*xxxxx*/*初始化变量*/sum=0;/*开始处理*/for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;prin
22、tf(“%dn”,sum);,main()int i,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);,难读易错不规范,函数与主函数程序由一个或多个函数组成必须有且只能有一个主函数main()程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。程序语句C程序由语句组成用“;”作为语句终止符注释/*/为注释,不能嵌套不产生编译代码,例:/*This is the main/*of example1.1*/*/,编译预处理命令,结构特点,1.4 C程序的上机步骤C程序开发步骤,file.e
23、xe,程序代码的录入,生成源程序*.c,语法分析查错,翻译生成目标程序*.obj,与其它目标程序或库链接装配,生成可执行程序*.exe,Turbo C集成开发环境配置要求UNIX,PC-DOS,MS-DOS,UCDOS操作系统硬盘容量约2M,448K RAM运行空间安装Turbo C创建子目录Install若不是可安装盘,将文件拷贝到对应的目录下,进入Turbo C进入DOS方式后,C:WINDOWSCD C C:CTC.exe主控菜单文件操作FILE:New Load Save Write to编辑操作EDIT:插入/修改 块 查找/替换编译链接COMPILE LINK MAKE执行RUN退
24、出Turbo CAlt+xAlt+F,Q帮助HelpF1Ctrl+F1,基本操作:F10-调用主菜单F2-存盘F3-打开Alt+F9-CompileCtrl+F9-RunAlt+F5-User Screen,常用热键,文本编辑:-移动光标PgUp,PgDn-上下翻页Ctrl+PgUp,Ctrl+PgDn-文件首尾Home End Ddelete Insert Bkspace,块操作:Ctrl+KB-块开始标记 Ctrl+KK-块结束标记Ctrl+KC-块拷贝 Ctrl+KV-块移动Ctrl+KY-块删除 Ctrl+KH-块隐藏,程序调试:F8-Step over F7-Trace intoF4
25、-Goto Cursor Ctrl+F7-Add WatchCtrl+F8-Toggle Breakpoint Ctrl+F2-Program Reset,窗口操作:F5-窗口缩放F6-窗口切换,1 学会使用C语言,能用C语言编制程序。2 掌握高级语言的基本特点,为学习其它的高级语言或开发工具打下坚实的基础。同时,为后续有关课程的学习打下基础对计算机程序的工作过程有所了解,增强使用程序的能力,而且,在学习C语言过程中所得到的能力,很容易迁移到其它软件的使用中。,学习高级语言目的,1 C语言关键字少,而且与其它高级语言类似,掌握标准C并不难。,2 C语言是基于函数的语言,C语言的大部分功能需要调
26、用库函数去实现。,DOS下的C编译器Turbo C 2.0大约有440个函数,BC+2.0大约有500多个函数,VC+除了标准的C运行库之及C语言扩展外,还有600多个Windows API,以及VC+中的类库,Linux的 C也有很多扩展。,TC库函数速查,C 语言学习中要注意的问题及学习方法,3、C语言可以直接对硬件进行操作,因此,对计算机的硬件要有一定的了解,否则,就发挥不了C语言的这一特长。,4、C语言的指针使用极为灵活,这往往会给使用者带来困难。,5、C语言的语法不太严格,给熟练的使用者以很大的灵活性,但给初学者带来很多困难,尤其是程序的调试。学会调试程序是非常重要的。,6、学习计算机语言要多实践,学习C语言更要多实践,只有通过大量的上机实践才能真正掌握C语言。,