《第1讲1语言概论及常量优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第1讲1语言概论及常量优秀PPT.ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第1 1讲讲1 1语言概论及常语言概论及常量量现在学习的是第1页,共36页教材、参考书与课时安排教材、参考书与课时安排参考书C语言程序设计唐国民编著清华大学出版社C程序设计谭浩强清华大学出版社C高级实用程序设计王士元清华大学出版社课时安排授课:36学时现在学习的是第2页,共36页课程要求课前请做好预习保持课堂安静,头脑清醒,思维活跃认真、独立、按时完成并提交作业重视上机实践,有效利用宝贵的上机时间现在学习的是第3页,共36页社会的需求PositionOct 2006PositionOct 2005Programming LanguageRatingsOct 2006Delta Oct 200
2、511Java21.172%-0.70%22C17.664%-1.11%33C+11.063%-0.76%44PHP9.862%+0.19%56(Visual)Basic9.727%+2.83%65Perl5.475%-1.97%78Python3.466%+0.58%87C#3.065%-0.40%99JavaScript2.202%+0.17%1010Delphi2.149%+0.65%1813COBOL0.545%-0.31%1917Pascal0.523%-0.04%2022Visual FoxPro0.417%+0.02%现在学习的是第4页,共36页课程目标:v熟记熟记C语言的基本概
3、念语言的基本概念v熟悉熟悉C-FREE的上机操作环境的上机操作环境v会读、会编、会调试会读、会编、会调试C程序程序v会用会用C语言解决实际问题语言解决实际问题现在学习的是第5页,共36页学习要点:v熟记熟记C语言的语法、句法语言的语法、句法v学会算法分析与算法设计学会算法分析与算法设计课程重点:第二章第二章第七章第七章课程难点:第五章、第六章、第七章第五章、第六章、第七章现在学习的是第6页,共36页第一章第一章C C语言概述语言概述现在学习的是第7页,共36页l l 主要内容1.1 1.1 语言发展史和特点语言发展史和特点1.2 1.2 程序的基本结构程序的基本结构1.3 1.3 程序的上机步
4、骤和方法程序的上机步骤和方法现在学习的是第8页,共36页 一、语言的发展历史C语言是国际上广泛流行的高级语言。C语言是在B语言的基础上发展起来的。1960年年 ALGOL60ALGOL60语言19631963年年 CPLCPL语言语言19671967年年 BCPLBCPL语言语言1970年年 B B语言语言19721972年年 C C语言语言 用于开发UNIX操作系统操作系统 1.1 1.1语言的发展史和特点语言的发展史和特点现在学习的是第9页,共36页52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96Ada
5、ALGOL60ALGOL68PascalModula-2CPLBCPLBCC+JavaLISPPROLOGCOBOLFORTRAN77FORTRANPL/1Simula67Smalltalk80BASICANSI-BASICQBASICVBFORTRAN90现在学习的是第10页,共36页1975年UNIX第6版发布,C优点突出引起关注。1977年出现了可移植C语言编译程序,推动了UNIX在各种机器上实现,C语言也得到推广,其发展相辅相成。1978年影响深远的名著The C Programming Language由 Brian W.Kernighan和Dennis M.Ritchie 合著,被
6、称为标准C。之后,C语言先后移植到大、中、小、微型计算机上,已独立于UNIX和PDP,风靡世界,成为最广泛的几种计算机语言之一。现在学习的是第11页,共36页1983年,美国国家标准化协会(ANSI)根据C语言各种版本对C的发展和扩充,制定了新的标准ANSI C,比标准C有了很大的发展。1988年K&R按照 ANSI C修改了他们的The C Programming Language。1987年,ANSI公布了新标准87 ANSI C。1990年,国际标准化组织接受了87 ANSI C为ISO C 的标准(ISO98991990)。1994年,ISO又修订了C语言标准。目前流行的C语言编译系统
7、大多是以ANSI C为基础进行开发的。现在学习的是第12页,共36页二、语言的特点简洁,灵活仅有32个关键字语法限制不太严格运算符表达能力强运算符丰富数据结构丰富允许访问物理地址 结构化结构化 目标代码质量高,程序执行效率高目标代码质量高,程序执行效率高 可移植性好可移植性好现在学习的是第13页,共36页C C语言的特点语言的特点-基本组成基本组成 基本字符集基本字符集 C C语言编程中可以使用的字符。语言编程中可以使用的字符。ASCIIASCII字符集字符集 数数 字:字:01234567890123456789 字字 母:母:abcabczABCZzABCZ 运算符:运算符:+-*/%=+
8、-*/%=!=!=&|&|&|!&|!()-.?:,;()-.?:,;特殊符号:特殊符号:_(_(下划线下划线)空格空格 回车回车(r)r)换行换行(n)(n)制表符制表符(t)(t)其它转义字符其它转义字符现在学习的是第14页,共36页1.3C程序格式和结构特点/*example1.1 The first C Program*/#include main()printf(“Hello,World!”);注释编译预处理函数语句必须;结束输出:Hello,World!例1.1第一个程序Hello,World!函数必须开头,以结束现在学习的是第15页,共36页例1.2/*example1.1 ca
9、lculate the max of a and b*/#include/*This is the main program */main()int a,b,sum;a=10;b=24;max=max(a,b);printf(”max=%dn,max);/*This function calculates the max of x and y */int max(int x,int y)int z;if(xy)z=x;else z=y;return(z);运行结果:max=34函数语句预处理命令注释现在学习的是第16页,共36页格式特点习惯用小写字母,区分大小写敏感不使用行号,无程序行概念可使
10、用空行和空格常用锯齿形书写格式main().main()inti,j,sum;sum=0;for(i=1;i10;i+)for(j=1;j10;j+)sum+=i*j;printf(“%dn”,sum);优秀程序员的素质之一:使用TAB缩进对齐有足够的注释有合适的空行现在学习的是第17页,共36页结构特点函数与主函数程序由一个或多个函数组成必须有且只能有一个主函数main()程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。程序语句C程序由语句组成用“;”作为语句终止符注释/*/为注释,不能嵌套不产生编译代码例:/*Thisisthemain/*ofexample1.1*
11、/*/非法编译预处理命令现在学习的是第18页,共36页编辑链接编译执行1.3 C程序的上机步骤C程序开发步骤file.exe程序代码的录入,生成源程序*.c语法分析查错,翻译生成目标程序*.obj与其它目标程序或库链接装配,生成可执行程序*.exe现在学习的是第19页,共36页例1、C 语言源程序文件通过了编译、连接之后,生成一个后缀为.EXE 的文件。()例2、C编译器可以找出C源程序中所有的语法错误和逻辑错误。()例3、程序调试就是找出并改正C源程序中的语法错误。()现在学习的是第20页,共36页C-FREEC集成开发环境现在学习的是第21页,共36页第二章第二章现在学习的是第22页,共3
12、6页l l 本章要点第二章基本数据类型及运算C现在学习的是第23页,共36页l l 主要内容2.1 2.1 标识符标识符2.2 2.2 常量与变量常量与变量2.3 2.3 运算符和表达式运算符和表达式2.4 2.4 标准函数和自定义函数标准函数和自定义函数2.5 2.5 格式输入输出函数格式输入输出函数第二章基本数据类型及运算C现在学习的是第24页,共36页2.1 标识符 C语言中,标识符分为:关分健字和用户自定义标识两类。一、关健字(也称为保留字)一、关健字(也称为保留字)在语言中的关键字,根据其功能不同可分为以下几种。1、数据类型关健字:intlongshortcharunsignedfl
13、oatdoubleenumstructunionvoidconst2、数据存储类型关健字:autostaticregisterextern3、用于语句的关健字:ifelsecasedefaultbreakdowhileforswitchgotoreturncontinue4、为原有的数据类型命新名:typedef5、求字节数:sizeof6、预处理:defineincludeundefifelseendififdefifndef现在学习的是第25页,共36页二、用户定义标识符二、用户定义标识符定义:用来标识变量、常量、函数等的字符序列标识符的命名规则:只能由字母、数字、下划线组成,且第一个字母
14、必须是字母或下划线字母区分大小写不能使用关键字命名原则:见名知意不宜混淆如l与I,o与0例:判断下列标识符号合法性sumSumM.D.JohndayDate3daysstudent_name#33lotus_1_2_3charab_above$123M.D.John3days#33char$123ab第二章基本数据类型及运算C现在学习的是第26页,共36页例1、可在C程序中用做用户标识符的一组标识符是(2007年9月全国计算机等考试原题)A、and B、Date C、Hi D、case _2007 y-m-d Dr.Tom Bigl答案:A例2、以下选项中不合法的标识符是()。(2008年4月
15、全国计算机等考试原题)A、printB、FORC、&aD、_00答案:C例3、在 C 程序中,APH 和 aph 代表不同的变量。答案:现在学习的是第27页,共36页 2.2 2.2 常量与变量常量与变量2.2.1 C语言提供了以下一些数据类型。数据类型数据类型构造类型构造类型指针类型指针类型空类型(空类型(无值类型)无值类型)voidvoid枚举类型枚举类型枚举类型枚举类型 enumenumenumenum数组类型数组类型数组类型数组类型结构类型结构类型结构类型结构类型 structstructstructstruct联合类型联合类型联合类型联合类型 unionunionunionunion
16、基本类型基本类型整型整型整型整型 intintintint字符型字符型字符型字符型 charcharcharchar实型(浮点型)实型(浮点型)实型(浮点型)实型(浮点型)单精度实型单精度实型单精度实型单精度实型 floatfloatfloatfloat双精度实型双精度实型双精度实型双精度实型 doubledouble现在学习的是第28页,共36页 2.2.2 常量和符号常量常量和符号常量在程序运行过程中,其值不能被改变的量称为常量常量区分为不同的类型:整型 100,125,-100,0实型 3.14,0.125,-3.789字符型 a,b,2字符串 a,ab,1232现在学习的是第29页,共
17、36页一般用大写字母是宏定义预处理命令,不是C语句直接常量:整型常量 实型常量 字符常量 字符串常量如#definePRICE30常量定义:程序运行时其值不能改变的量(即常数)分类:符号常量:用标识符代表常量定义格式:#define 符号常量 常量例符号常量举例#definePRICE30main()intnum,total;num=10;total=num*PRICE;printf(total=%d,total);运行结果:total=300说明:说明:说明:说明:程序中用#define命令行定义PRICE代表常量30,此后凡在本文件中出现的PRICE都代表30,可以和常量一样进行运算现在学
18、习的是第30页,共36页1、整型常量(整常数)三种形式:十进制整数:由数字09和正负号表示.如 123,-456,0八进制整数:由数字0开头,后跟数字07表示.如0123,011十六进制整数:由0 x开头,后跟09,af,AF表示.如0 x123,0Xff例12与12L例30000为int型65536为longint型整型常量的类型根据其值所在范围确定其数据类型在整常量后加字母l或L,认为它是longint 型常量问题:0123 =()100 x123=()100Xff =()1083291255问题:0123 =()100 x123=()100Xff =()10返回现在学习的是第31页,共3
19、6页例1、表达式0195是一个八进制整数。例2、08是正确的整型常量。例3、以下选项中,合法的一组C语言数值常量是()(2007年9月全国计算机等考试原题)A、026 B、12.C、.177 D、0 x8A .5e-3 0Xa23 401.5 10,000 -0 xf e0 0abc 3.e5例4、C程序不能正确表示的数制是()。(2008年9月全国计算机等考试原题)A、二进制B、八进制C、十进制D、十六进制AA现在学习的是第32页,共36页2、实型常量(实数或浮点数)表示形式:十进制数形式:(必须有小数点)如0.123,.123,123.0,0.0,123.指数形式:(e或E之前必须有数字;
20、指数必须为整数)如12.3e3,123E2,1.23e4,e-5 ,1.2E-3.5 实型常量的类型默认double型在实型常量后加字母f或F,认为它是float 型加上L或L认为是double型返回现在学习的是第33页,共36页3、字符常量定义:用单引号括起来的单个普通字符或转义字符.字符常量的值:该字符的ASCII码值转义字符及其含义:转义字符含义nvradddtbf“xhh转义字符含义换行垂直制表回车响铃单引号3位8进制数代表的字符水平制表退格换页反斜线双引号2位16进制数代表的字符如101-A012-n376-x61-a60-0483-()例:A-101-x41-65如 A65,a97
21、,048,n10如 a A?n 101转义字符:反斜线后面跟一个字符或一个代码值表示例转义字符举例(ch2_001.c,ch2_004.c)main()printf(101x42Cn);printf(Isay:Howareyou?n);printf(CProgramn);printf(TurboC);运行结果:(屏幕显示)A B CIsay:”How are you?”C ProgramTurbo C例main()printf(“Yb=n”);运行结果:屏幕显示:=打印机输出:现在学习的是第34页,共36页例1、不合法的常量是()。A、2B、C、D、483例2、&f是不正确的字符常量。例3、n不是一个字符常量。例4、以下选项中不属于字符常量的是()。(2008年9月全国计算机等考试原题)A、CB、CC、xCCD、072例5、以下选项中不能作为C语言合法常量的是()。(2008年9月全国计算机等考试原题)A、cdB、0.1e+6C、aD、011DBA现在学习的是第35页,共36页字符常量与字符串常量不同4、字符串常量定义:用双引号(“”)括起来的字符序列存储:每个字符串尾自动加一个 0 作为字符串结束标志hello0例 字符串“hello”在内存中aa0例a“a”例 空串 “”0例:charch;ch=“A”;例:charch;ch=A;现在学习的是第36页,共36页
限制150内