第1讲 最简单的C语言程序设计_第1页
第1讲 最简单的C语言程序设计_第2页
第1讲 最简单的C语言程序设计_第3页
第1讲 最简单的C语言程序设计_第4页
第1讲 最简单的C语言程序设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

.,课程:C语言程序设计,教材:谭浩强著C程序设计清华大学出版社讲课:36学时实验:27学时平时成绩:作业、考勤考核:平时成绩30%,期末考试70%,.,任课教师,姓名:杨传栋办公地点:校本部文理大楼717E-Mail:ycdong,.,第一讲简单的C程序设计(1),-基本概念,.,主要内容,什么是计算机程序程序设计语言的发展C语言词汇及程序书写格式C语言程序结构数据类型与变量,.,1什么是程序,计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成;计算机采用二进制表示数据和指令;由指令组成的程序以及程序所要处理的数据都被存储在存储器中,计算机自动依次取出指令并执行。计算机的工作过程实际上是执行程序的过程。程序的执行过程就是在控制器的控制下,不断地取指令、执行指令的过程。,.,内存地址,所有的程序和数据都是存放在存储器中的。一般把存储器中的一个字节称为一个内存单元。为了正确地访问这些内存单元,必须为每个内存单元编上号。根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号就是所谓内存地址。,.,指令是能被计算机识别并执行的一种二进制代码,一条指令完成一种基本操作。程序:是控制计算机完成特定功能的一组有序指令的集合。,.,2程序设计语言的发展,程序设计语言:编写程序所使用的语言。,.,(1)第一代语言机器语言。它依赖于机器,不同的计算机有不同的语言,它由一系列指令组成,每条指令用二进制或八进制编码。例:0000001011001111表示加法指令机器语言是唯一计算机可以直接执行的语言。,.,(2)第二代语言汇编语言(符号语言)用符号代替机器语言中的二进制编码。如:MOVAL,5计算机不能直接识别和执行汇编语言,它必须经过一个汇编程序(系统软件)转换成机器语言后才能执行,它仍依赖于机器,不同的计算机有不同的汇编语言,不能通用。,.,(3)第三代语言算法语言(高级语言)计算机不能直接识别和执行算法语言,源程序须经过编译程序(系统软件)编译成机器语言程序(目标程序)后才能执行,过程如下:这种方式被称为编译执行,用户程序只需经过编译程序编译一次,编译结果(目标程序)可多次运行。通常,把用高级语言或汇编语言编写的程序称为源程序。,.,高级语言程序的执行除了上述方式外还有另外一种方式,即一次只读一行源程序,将该行源程序翻译成机器语言并执行,翻译结果不保存,这种方式称为解释执行。这种方式下,每次运行用户程序时都必须要用解释程序。典型的代表:早期的BASIC语言,PCLogo等,.,(4)第四代语言非过程化语言它只描述需求解的问题是是什么,典型的如SQL语句(结构化查询语言)select“男生”from“03级”where“年龄21”(5)第五代语言智能化语言主要为人工智能领域设计的,如专家系统,知识库系统等,另外一种说法:第四代:甚高级语言,是面向对象或面向问题的高级语言。如:VisualBasic,简称VBVisualC+,简称VC,.,C语言语法简洁、紧凑;使用方便、灵活;具有丰富的运算符和数据结构;并能通过函数来实现程序的模块化。它即具有高级语言的一切功能,也具有低级语言的一些功能。因此,它即可以用来编写系统软件,也可以用来编写应用软件。所以它是当今国际上广泛流行的一种计算机高级语言。,C语言,.,3.C语言词汇及程序书写格式,语言词汇在语言中使用的词汇分为六类:标识符,关键字,运算符,分隔符,常量,注释符等。,.,标识符,在程序中使用的变量名、函数名、标号等统称为标识符。除库函数的函数名由系统定义外,其余都由用户自定义。C规定,标识符只能是字母、数字、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。在使用标识符时还必须注意以下几点:标准C不限制标识符的长度,但它受各种版本的C语言编译系统限制,同时也受到具体机器的限制。例如在某版本C中规定标识符前八位有效,当两个标识符前八位相同时,则被认为是同一个标识符。在标识符中,大小写是有区别的。例如BOOK和book是两个不同的标识符。标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。因此,命名应尽量有相应的意义,以便于阅读理解,作到“顾名思义”。,.,标识符的例子,以下标识符是合法的:a,x,x3,BOOK_1,sum5以下标识符是非法的:3s以数字开头s*T出现非法字符*-3x以减号开头bowy-1出现非法字符-(减号),.,关键字,关键字是语言规定的具有特定意义的字符串,通常也称为保留字。用户定义的标识符不应与关键字相同。,.,C语言的关键字共有32个,可分为以下几类。(1)数据类型关键字(12个):char,double,enum,float,int,long,short,signed,struct,union,unsigned,void(2)控制语句关键字(12个):break,case,continue,default,do,else,for,goto,if,return,switch,while(3)存储类型关键字(4个):auto,extern,register,static(4)其它关键字(4个):const,sizeof,typedef,volatile(易变),.,(4)预处理命令字,包括include,define,ifdef,ifndef,endif,line主要用在C语言的编译预处理命令中。,.,运算符,语言中含有相当丰富的运算符。运算符与变量,函数一起组成表达式,表示各种运算功能。运算符由一个或多个字符组成。,.,分隔符,在语言中采用的分隔符有逗号和空格两种。逗号主要用在类型说明和函数参数表中,分隔各个变量。空格多用于语句各单词之间作间隔符。在关键字和标识符之间必须要有一个以上的空格符作间隔,否则将会出现语法错误,例如把inta;写成inta;C编译器会把inta当成一个标识符处理,其结果必然出错。,.,常量,C语言中使用的常量可分为数字常量、字符常量、字符串常量、符号常量、转义字符等多种。在后面课程中将专门给予介绍。,.,注释符,C语言的注释符是以“/*”开头并以“*/”结尾的串。在“/*”和“*/”之间的即为注释。程序编译时,不对注释作任何处理。注释可出现在程序中的任何位置。注释用来向用户提示或解释程序的意义。在调试程序中对暂不使用的语句也可用注释符括起来,使翻译跳过不作处理,待调试结束后再去掉注释符。,.,C语言源程序书写格式C语言程序使用英文小写字母书写。C语言区分字母大小写,大写字母一般符号常量或特殊用途使用。所有语句都必须以分号“;”结束,作为语句之间的分隔符。函数的最后一个语句也必须以分号“;”结束。程序行的书写格式自由。既允许1行内写几条语句,也允许1条语句分写在几行上。,例:输出一个字符串:ThisisaCprogram.的语言程序。程序如下:main()/*这是一个简单的演示程序*/printf(“ThisisaCprogram.n”);程序运行结果:ThisisaCprogram.该程序仅由一个main()主函数构成。,4.C程序结构,1.一个完整的程序一般是由一个main()函数(又称主函数)和若干个其它函数构成的。也可仅由一个main()函数构成。2.一个语言程序,总是从main()函数开始执行,而不论其在程序中的位置。当主函数执行完毕时,亦即程序执行完毕。习惯上,将主函数main()放在最前头。3.函数是语言程序的基本单位。,函数的一般结构任何函数(包括主函数main())都是由函数说明和函数体两部分组成。其一般结构如下:函数类型函数名(函数参数表)说明语句部分;执行语句部分;,函数说明部分,函数体部分,.,5数据类型与变量,大多数程序设计语言都将数据分类,这些数据的类别就是所谓的数据类型。,.,短整型(short)整型整型(int)长整型(long)实型单精度型(float)(浮点型)双精度型(double)字符类型(char)枚举类型(enum)C数组类型结构类型(struct)共用类型(union)文件类型,数值类型,基本类型(简单类型),构造类型(组合类型),指针类型空类型,数据类型,C语言的数据类型,.,不同的数据类型所占用的内存单元数(字节数)不等,如整型数据(int)占2个字节,字符(char)占1个字节,实型数据(float)一般占4个字节,.,变量,变量:在程序中,数据连同其存储空间被抽象为变量。变量名:每个变量都有一个名字,这个名字就是变量名。,.,变量的类型与声明(定义),不同类型的数据在内存中占据不同长度的存储区,且采用不同的表示方式;因此,在引用变量之前必须先用声明语句指定变量的类型,这样在编译时就会根据指定的类型分配其一定的存储空间,并决定数据的存储方式和允许的操作方式。注意:一个变量只能属于某一类型,不能把一个变量声明为几种不同类型。,.,变量声明(定义)的一般格式:存储类型数据类型变量名,变量名2;例如:inta1,a2,a3;变量初始化:在定义变量的同时进行赋初值的操作。变量初始化的一般格式:存储类型数据类型变量名=初值,

温馨提示

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

最新文档

评论

0/150

提交评论