学习by学长计算机相关语言_第1页
学习by学长计算机相关语言_第2页
学习by学长计算机相关语言_第3页
学习by学长计算机相关语言_第4页
学习by学长计算机相关语言_第5页
免费预览已结束,剩余41页可下载查看

下载本文档

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

文档简介

1、C语言程序设计高敬阳Email: 课程安排总64学时,讲授38,上机26成绩组成: 平时成绩(10%):含作业、上机、出勤、课堂提问 测验两次(各15):共30 最终考试(60%):60%上课时间: 周三 3,4节 北701, 周五 3,4节(1618周) 上机时间: 周三7,8节 北一机房 信息1、2、5 3-17周 周五5,6节 北四机房 信息3、4 3-17周参考书黄维通: C程序设计 清华大学出版社李俊杰著:C语言复习指南与题解 清华大学出版社 第1章 概述一、何谓编程? 为了使计算机能够按照人们的意志进行工作,为人类解决问题,人类必须根据问题的要求,编写出相应的程序。程序: 是一组计

2、算机能够识别和执行的指令。矛盾产生了:计算机识别:010110101100001.人类习惯于:自然语言解决方法:机器语言 汇编语言 高级语言汇编程序编译程序/解释程序高级语言Fortran语言:适用于科学和工程计算Basic语言:简单、易学Pascal语言:教学语言,难以推广到应用领域C语言:教学、应用,强大的生命力Java语言:跨平台分布式二、C语言简介 P1历史背景: 语言是贝尔实验室于70年代初研制出来的 标准CANSI C87ANSI C 目前,在微机上广泛使用的语言编译系统有Microsoft C、Turbo C 、Borland C等。1.C语言的特点: C语言同时具有低级语言和高

3、级语言的优势。(1)语言简洁、紧凑,使用方便、灵活。(2)运算符极其丰富。(3)数据结构丰富(4)具有结构化的控制语句(5)语法限制不太严格,程序设计自由(6)允许直接对硬件进行操作。易于进行系统软件的开发。(7)生成的目标代码质量高,程序执行效率高。(5)可移植性好(较之汇编语言)。2.C程序的结构例1.1 仅由main()函数构成的语言程序。main() printf(“Hello world!n”); 语言程序的结构: 一个完整的语言程序,是由一个main()函数(又称主函数)和若干个其它函数结合而成的,或仅由一个main()函数构成。程序运行结果: Hello world! main(

4、) int a,b,c;scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“max=%d”,c); int max(int x, int y) return( xy ? x : y ); /*主函数*/例1.2 由main()函数和1个其它函数max()构成的语言程序。程序运行情况:6,9 max=91.函数是语言程序的基本单位。main()函数的作用,相当于其它高级语言中的主程序;其它函数的作用,相当于子程序。2.函数由两部分组成:函数首部和函数体。3.C语言程序总是从main()函数开始执行。当主函数执行完毕时,亦即程序执行完毕。习惯上,将主函数main()放在

5、最前头。4.C语言本身没有输入输出语句。输入输出操作是由scanf和printf等库函数来完成。#include3.C程序的组成4. C程序的书写习惯1.所有语句都必须以分号“;”结束,函数的最后一个语句也不例外。2.程序行的书写格式自由,既允许1行内写几条语句,也允许1条语句分写在几行上。3./*.*/对程序的任何部分进行注释 (1) “/*”和“*/” 必须成对使用,且“/”和“*”、以及“*”和“/”之间不能有空格,否则都出错。 (2)注释的位置,可以单占1行,也可以跟在语句的后面。 (3)如果1行写不下,可另起1行继续写。 (4)注释中允许使用汉字。在非中文操作系统下,看到的是一串乱码

6、,但不影响程序运行。C程序小结C只能存在且必须存在一个主函数main(),运行总是从main()开始一个函数由两部分组成 函数首部 声明部分 函数体 执行部分 上机步骤#include main() float r, l; printf( “r=“ ); scanf( “%f”,&r ); l = 2*3.14159*r; printf( “L=%fn”,l ); return 0;源程序文件名.c目标程序文件名.obj开始编辑编译 有错链接 结果正确结束正确不正确有无执行可执行程序文件名.exe库函数和其他目标程序编译器链接器修改调试TC的启动、退出与命令菜单 编辑并保存一个语言源程序 编译

7、、连接单个源程序文件 运行与查看结果 编辑下一个新的源程序 urbo 是一个集源程序编辑、编译、连接、运行与调试于一体、 用菜单驱动的集成软件环境。Turbo C 2.0的基本操作第3章 数据类型、运算符与表达式 主要内容:数据数据类型运算符和表达式保留字、标识符保留字:是C语言中的一类标识符,在程序中表示固定的意义,不能被重新定义用作它用。标识符:由程序员定义的一些名字,通常是一些字符序列。标识符的命名规则:(1)有效字符:只能由字母、数字和下划线组成,且以字母或下划线开头。(2)有效长度:随系统而异,但至少前个字符有效。如果超长,则超长部分被舍弃。TC中缺省长度为32位。(3)C语言中的保

8、留字不能用作标识符。(4)选择标识符时,应做到“见名知意”。例子: a x1 f_name _time file5 2a x/y #name c*d G.John注意:C语言是大小写敏感的语言。2.1 常量常量:程序运行过程中,其值不能改变的量。字面常量(直接常量):区分不同的类型。整型常量 1,-2,3实型常量 1.5, -3.2,1.2e+5字符常量 a, b字面常量不需定义,可直接使用。符号常量:用一个标识符代表一个常量。符号常量的使用。P38书写习惯:符号常量名常定义为大写字符。2.1.1 整型常量 1.整型常量的三种表示方法:十进制数八进制数(以0开头)十六进制数(以0 x开头)15

9、8, -10, 00123即(123)80 x123即(123)16注意:数字之间不允许有空格、逗号等如:12,000 123 452.1.2 实型常量1.实型常量的表示方法实数即浮点数。有两种表示形式:(1)十进制小数形式:数字和小数点组成(2)指数形式:如:234e2= 2.34e4=2.34104注意:a). e之前必须有数字,e后的数据必须为整数;b). 一个实数的指数形式可以有多种形式。其中规范化的指数形式定义为:e之前数的小数部分中,小数点左边应有且只有一位非零数字。me+n (或 mE+n)尾数 指数 整、实数 正整数或零 练习: 下面的数哪些合法? 78 01377 0 x2a

10、1 +38.40 -0. 3.e-8 16,000 0 x3g e13 1.23e2 245e-5 .45e4 4.5e4.5 .e2 4.0e e e-42.1.3 字符型常量1.字符常量的表示方法一般字符常量:用单引号括起来的单个字符 ASCII: American Standard Code for Information Interchange美国信息交换标准代码 P364附录A转义字符:控制字符。以“”开头。 P48例如: a, 5, ; ,A ,0 字符常量的值是该字符在计算机字符集中的编码数字值。与字符常量不同,字符串常量是一对双引号括起来的字符序列。如:“China”, “Hi

11、”.字符常量与字符串常量的区别:1.表示形式不同: a , “a”010010000110100100000000Hi0072,105,0002.字符串常量实际在内存中存储时,系统会自动添加一个0字符作为该串的结束标志。如:Hi的存储。char c; c=a; c=“a”;思考:2.1.4 字符串常量 P522.1.5 符号常量符号常量:用一个标识符代表一个常量。由预处理命令#define来定义,先定义后使用书写习惯:符号常量名常定义为大写字符。 格式:define 符号常量 常量#define PI 3.14main() float r,h,v ;scanf(“%f %f”,&r,&h);v

12、=PI*r*r*h;printf(“Volume=%f”,v); 使用它的好处:1、含义清楚2、可做到“一改全改”变量:程序运行中其值改变的量。变量代表程序运行中其值改变的量。可以用标识符对变量命名。书写习惯:变量名常定义为小写字符。在c语言中变量必须“先定义,后使用”。注意:1.变量的定义方法与符号常量不同:符号常量:#define 标识符 常量变量定义:数据类型 标识符;2.变量在内存中占据一定的存储单元;3.区分变量的三个属性:变量名、变量值、存储单元2.2 变量 变量数据的读取与改写读取:变量名实际代表一个确定的存储单元。程序编译完成后,变量就与数据存储单元一一对应。对变量读取操作,就

13、是到对应的存储单元中读取数据。取之不尽!改写:就是给变量赋与新的值, 原值被覆盖 变量 内存ab2.2 数据类型整型实型(浮点型)字符型(字符串)枚举型数组类型结构体类型共用体类型基本类型构造类型指针类型数组类型相同的数据集合结构体类型不同的数据集合常量形式变量形式空类型整型变量(1)基本类型符为int定义一个整型变量:int i;根据数值的范围可将变量定义以下三种类型:基本整型 int短整型 short int (short)长整型 long int16位 (2字节)16位32位16位所表示的数值范围是: -215215-1 ,即:-327683276732位所表示的数值范围是:-23123

14、1-1 编程习惯:为了获得一个较好的效率,非迫不得已,很少使用long int型。unsignedsignedunsignedsignedunsignedsigned数值范围P43 表3-1实型变量:(1)实型数据在内存中的存放: 按指数形式存放。基本类型符为float:(2) 定义一个实型变量:float i;(32位)此外根据长度不同,还有double型(64位)和long double型(80位)。字符变量字符变量用来存放字符常量。(1)字符类型关键词:char定义一个字符型变量:char c1;注意:一个字符变量中只能存放一个字符。一个字符变量在内存中占一个字节。如:char ch1,

15、 ch2, letter, digit;ch1=a ;ch2=n ;字符数据在内存中的存储字符常量赋给一个变量时,内存中并不存放字符本身,而是存放该字符对应的ASCII码。1.为字符型数据与整型数据之间的转换带来了方便。 2.字符可以以两种形式输出:(根据需要)输出字符输出整数(即ASCII码值)3.便于字符数据进行算术运算:C语言允许字符数据与整数直接进行算术运算、相互赋值,且运算过程中使用的为ASCII码值。4.但需注意,字符数据占一个字节,int型占两个字节此外,有些系统(TC)中,将字符变量最高位作为符号位,则有signed char(-128127), unsigned char(0

16、255)。1.定义: 数据类型 标识符;2.赋初值: C语言允许在定义变量的同时对变量赋值。即变量的初始化。 例: int a=3; float f=5.8; char c1=e; float a=1.0,b=1.2 注意:没有赋初值的变量,并不意味着该变量中没有数值。此时,变量中的值是一个随机数。 变量的定义、赋初值、使用3.使用在程序中常使用变量进行数值计算、数据处理等。使用变量时,先定义,后引用。例: main( ) int a=55; /* 初始化:定义的同时赋值*/ int b; /*先定义,后赋值*/ int c; b=45; c=a+b;/*算术表达式*/ printf(“a=%

17、d b=%d c=%d”,a,b,c);/*输出函数*/ 结果:a=55 b=45 c=100各类数值型数据间的混合运算 P54整型和实型数据可以混合运算不同类型的数据要先转换成同一类型,然后进行运算double floatlong unsigned int char, short转换规则:由低级(字节长度短)向高级(字节长度长)转换运算中的类型转换:自动类型转换(隐式)强制类型转换(显示) 强制类型转换运算符名 称 运算符数据类型转换 (类型名)格式:(类型名)(表达式); 将表达式的值转换成类型名所标明的数据类型。 例1:(long)2; 结果:表达式的值等于2L。 例2:float p;

18、int c; p=4.2; c=(int)p; 结果:c等于4。p的类型不变 注意:在进行强制类型转换时,得到一个所需类型的中间变量,原来变量的类型不发生变化。运算符:种 类: 算术运算符、关系运算符、逻辑运算符、 条件运算符等等。优先级 混合运算时,各种运算的优先次序。3.8 算术运算符和算术表达式 P55算术运算符和算术表达式 名 称 运算符 运算规则 负 - 取负值 加 + 加法 + 减 - 减法 - 乘 * 乘法 * 除 / 除法 / a).两个整数相除的结果取整数; b).一整数、一浮点数相除的结果为浮点数; 模 % 整除取余 两侧均为整数; 分子分母 ,结果=余数。 分子分母 ,结

19、果=分子。 1. 基本算术运算符:由算数运算符连接常量、变量或表达式构成。 例: 2*a+b/3 结果是:整数或实数。 2.算数表达式4. 自增、自减运算符名 称 运算符 说 明 例增 1(前缀) + 先加1,后使用。 +i 增 1(后缀) + 先使用,后加1。 i+减 1(前缀) - 先减1,后使用。 -i减 1(后缀) - 先使用,后减1。 i- 使用的是表达式的值例:int j,i=3; 例:int j,i=3; j=+i; j=i+; 结果变量j的值为3, 结果j的值为4。 变量i将3赋给j后自加1变为4。 注意:a.自增自减运算仅限用于变量、不能用于常量或表达式。b.+,-的结合方向

20、为:自右至左。 如:-i+;#include main( ) int i, j,m,n; i=8; j=10; m=+i; n=j+; printf(“%d,%d,%d,%dn”,i,j,m,n); 书P673.103.9 赋值运算符和赋值表达式赋值运算符 名 称 运算符 赋 值 = 格式:变量=表达式 ;先计算等号右边的表达式,然后将其值赋给等号左边的变量。注意:C语言赋值运算符与数学中的等号其含义有着本质的不同。 例:x = 10 ; y = x*x+x ; x=x+12.复合的赋值运算符 P62 名 称 运算符 例 加赋值 += a + =b a=a + b 减赋值 - = a -=b a=a - b 乘赋值 *= a*=b a=a*b 除赋值 / = a / =b a=a / b 模赋值 % = a %=b a=a %b减化程序,提高编译效率。注意:x % = y+33. 赋值表达式 由赋值运算符连接常量、变量或表达式构成。 格式:变量 赋值运算符 表达式例1: int x,y; x=5; y=10; y/=5; x=10*(y=5);赋值表达式注意:赋值表达式的值就是被赋值的变量的值。例子:a+= a- =a*a pri

温馨提示

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

评论

0/150

提交评论