C语言程序设计第1-2.ppt_第1页
C语言程序设计第1-2.ppt_第2页
C语言程序设计第1-2.ppt_第3页
C语言程序设计第1-2.ppt_第4页
C语言程序设计第1-2.ppt_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计,李芳,C语言程序设计课程简介,C语言是当今使用最广泛的高级语言,是操作系统、编译系统等大型复杂系统的首选语言。实践证明,用该语言编写的程序,灵活、方便、简洁、高效、数据结构丰富、功能齐全。C语言自问世以来,很快就流行于全世界,并为各种规模的通用计算机所必备。同时,C语言以其灵活方便的特点,成为培养学生计算机语言思维,了解计算机编程思想的最佳语言,它已被当今国内外众多主要高校列为各理工科专业必修课程。,教学要求,达到三个层面的教学:,掌握C语言的基本结构、各种数据类型和控制流程的语法、语义和语用。,学习运用计算机语言进行程序设计的思想和方法,初步受到程序设计方法、技巧、风格和素养的训练。,熟悉并掌握一些常用基本算法和C语言程序设计技术,培养学生利用C语言解决一般问题的程序设计能力。,课时安排,第一章:C程序设计概述2课时第二章:C语言的基本数据类型与表达式4课时第三章:顺序结构程序设计2课时第四章:选择结构程序设计4课时第五章:循环结构程序设计6课时第六章:函数4课时第七章:数组4课时第八章:指针4课时第九章:结构体与共用体2课时第十章:文件选讲第十一章:C语言综合应用程序举例选讲,1.1程序与程序设计语言1.2C语言的发展过程1.3C语言特点1.4简单C程序介绍1.5C语言程序的开发环境,第1章C语言程序设计概述,教学目的和基本要求:,要求学生了解程序语言的概念,C语言特点,C程序开发过程,简单C程序结构。,教学重点:,C程序开发过程、简单C程序结构。,明白三个概念:语言、程序、程序设计,自然语言:人与人之间交流的工具,通过自然语言实现人与人之间的沟通,使别人能够明白的按照语言的表达来办事、工作。如:汉语、英语、德语、法语、日语等。,1.1程序与程序设计,什么是语言?,计算机语言:(又叫程序设计语言)人与计算机之间交流的工具,通过计算机语言实现人与计算机之间的沟通,使计算机能够明白的按照语言的表达来办事、工作。如:C语言、foxpro、basic、java、汇编语言、机器语言等。,程序就是按照计算机语言的语法规则、语句格式,编制成的一组能够让计算机理解并按照执行的语句。类比的说,计算机程序就好比于自然语言的一段话,或一篇文章,可以让他人理解并执行。,什么是程序?,通俗的讲,程序就是一个用计算机语言描述的,可以由计算机执行的某一问题的解决步骤。,人们常把编写程序的过程称为程序设计。,计算机可以直接识别和执行的二进制语言。如:加法指令:10000000减法指令:10010000特点:计算机可以直接识别和执行,效率高,节省内存;但难以阅读和记忆。,程序设计,按照不同种计算机语言的语法编写的程序,我们把它称为某一种语言的程序。,用C语言编写的程序,我们称为C语言程序。类似的有机器语言程序、汇编语言程序、basic语言程序等。,程序设计语言的种类很多,从其发展历史以及功能情况来划分可以大致划分成五个阶段:,1、机器语言:,2、汇编语言:用“助记符”来表示机器指令。如:ADDA,BSUBA,B计算机不能直接识别和执行用汇编语言编写的源程序,它必须经过一个叫汇编程序的系统软件翻译成机器语言程序(即目标程序)后才能执行。,3、算法语言(又称为面向过程的语言)即高级语言,不依赖于机器,降低了编程的难度。如:C、PASCAL、FORTRAN等,用+和-来表示加减运算。计算机也不能直接执行算法语言描述的源程序,必须先经过编译程序或解释程序翻译成目标程序后,才能由计算机执行。,4、面向任务的程序设计语言:是非过程化的语言,不需要知道问题是如何求解的。例如:要从某学生表SS用数据库(SQL)查询语言获取表中记录的信息,采用SELECT语句,描述如下:SELECTSSNO,SSNAME,SSAGE,SSSEXFROMSS。,5、面向对象的程序设计语言:认为系统是由许多对象组成的,对象通过消息相互联系和相互作用,从而完成系统的功能。如C+,设计的程序更易懂,更适合更大规模的程序开发。,1.2C语言的发展及特点,一、C语言的发展概况起源于1968年发表的CPL语言,目前在微型计算机上使用的有MicrosoftC,BorlandC,TurboC等多种版本。既可用来写系统软件,也可用来写应用软件。,二、C语言的特点1、具有结构化语言的特点,用函数作为程序的组成单位,设计出的程序简洁、紧凑、结构清晰;2、既有高级语言的特点(可移植性好),又有低级语言的许多功能(能对硬件操作);3、提供了丰富的数据类型、运算符;4、语法限制不太严格,程序设计自由度大;5、生成的目标代码质量高,程序执行速度快。,1.2C语言的发展及特点,#include/*标准输入输出头文件*/voidmain()/*主函数*/inta,b,s;/*定义三个整型变量*/a=4;/*变量赋值*/b=3;/*变量赋值*/s=a*b;/*算术运算并赋值*/printf(“s=%dn”,s);/*输出结果*/,1.4简单C程序介绍,一、简单的C语言程序示例,例1-1:长方形的长和宽分别为4、3,求它的面积。,解:设长方形的长为a,宽为b,面积为s,则s=a*b=4*3=12答:长方形的面积是12。,#include/*标准输入输出头文件*/main()inta,b,c,s;/*定义四个整型变量*/scanf(“%d%d%d”,intb=6,c=3;求解:a*b/c-1.5+a+fabs(-5)=?,floata=2.0;intb=6,c=3;a*b/c-1.5+a+fabs(-5),12.0/3,5,4.0-1.5,2.5+97(int),99.5+5,104.5(double),等价于i=i+1;,j=i;i+;所以i的值为4,j的值为3。,i+;j=i;所以i的值为4,j的值为4。,例如:,(1)i+;+i;(2)i=3;j=i+;(3)i=3;j=+i;,3、自增与自减运算符,+i,-i:使用之前使i的值增1(或减1);i+,i-:使用之后使i的值增1(或减1);,结合性:自右至左。如:i=2;j=-i+;等价于:j=-(i+);即:j=-i;i+;“+”与”-“是同优先级所以i的值为3,j的值为-2。,注意“+”或“-”自增与自减运算符的使用。如:设i=3,k=(i+)+(i+)+(i+),k=?如:设i=3,j=4,k=i+j,k=?,1、6种关系运算符:=!=2、关系表达式:用关系运算符将表达式连接起来的式子优先级:(=)(=!=)结合性:自左至右;表达式的值:若为真,则结果为1;若为假,则结果为0。,35的值为0;32的值为0;3+(43)*4的值为3;3+4b?a:bmax及赋值表达式的值均为5;a条件赋值,结合性:自右至左;y=x10?x/10:x0?x:-x;等价于:y=x10?x/10:(x0?x:-x);当x的值为15时,表达式的结果为:1当x的值为5时,表达式的结果为:5思考:用条件表达式描述:从a,b,c中找出最大者赋给max2、逗号运算符:,形式:表达式1,表达式2,表达式n求值规则:从左至右依次计算各表达式的值;表达式的值:最后一个表达式的值。优先级:最低;结合性:自左至右;,例如:aby表达式y=a=4,b=5,a+b;4549y=(a=4,b=5,a+b);4599y=(a=4,b=5),a+b;4559y=a=(4,b=5),a+b;55510注意:C语言常用逗号作为分隔符,例如:inta=3,b=4,c=5;printf(“%d,%d,%d”,(a,b,c);printf(“%d,%d,%d”,a,(a,b,c),c);结果为3,5,5,形式有两种:sizeof变量名sizeof(类型名)结果为整型数。,inta;floatx;printf(“%d,%d”,sizeofa,sizeofx);printf(“%d,%d”,sizeof(int),sizeof(float);以上两个printf语句结果均为2,4。,例如,3、求字节运算符:sizeof作用:求得变量或某种数据类型所需的字节数。,C语言允许整型、实型、字符型数据进行混合运算。有3种转换方式:自动转换、赋值转换和强制转换。一、类型自动转换,doublefloatlongunsignedintchar,short,2.4数据类型转换,intx=2;floaty=1.6;charc=A;intz=2;则:c+z+x*y=c+z+x*y65(int)+2(int)+2.0(double)*1.6(double)=68.2(double)二、赋值转换在赋值时将赋值符右边值的类型转换成与其左边变量类型一致的类型。有下列几种情况:(1)实型整型(字符型):去掉小数部分;,例如,intc=68.5;printf(“%d”,c);,(2)整型(字符型)实型:补足有效位;(3)对char、int、short、long、unsigned型数据:赋值符右边数据(a位)赋值符左边的变量(b位)若a=b原样照赋;ab截断高a-b位,送低b位;有符号数据有符号变量:符号扩展;其他情况:高a-b位全补0。符号扩展:符号位为0,剩余的高位补0;符号位为1,剩余的高位补1。,ab,floatf=23;2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论