二级c语言培训(1)

上传人:无*** 文档编号:242502187 上传时间:2024-08-26 格式:PPTX 页数:268 大小:635.50KB
返回 下载 相关 举报
二级c语言培训(1)_第1页
第1页 / 共268页
二级c语言培训(1)_第2页
第2页 / 共268页
二级c语言培训(1)_第3页
第3页 / 共268页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,学,C,语言,就是学思考问题的过程和解决问题的能力。,实实在在学知识 顺顺利利过考试,全国计算机等级考试二级,c,程序设计(20,13,版),二级C语言考试介绍,考核内容:二级定位为程序员,考核内容包括公共基础知识和程序设计。所有科目对基础知识作统一要求,使用统一的公共基础知识考试大纲和教程。二级公共基础知识在各科笔试中的分值比重为30%(30分)。程序设计部分的比重为70%(70分),主要考查考生对程序设计语言使用和编程调试等基本能力。,学,C,语言,就是学思考问题的过程和解决问题的能力。,二级C语言考试介绍,考试形式:二级所有科目的考试包括笔试和上机考试两部分。二级,C,笔试时间为90分钟,上机时间改为90分钟。,二级,C,上机应用软件为,Visual C+6.0,学,C,语言,就是学思考问题的过程和解决问题的能力。,二级C语言考试介绍,考试成绩划分为优秀、良好、及格和不及格四个等第成绩,笔试或上机考试成绩只有一门及格的,下次考试及格的一门可以免考,两部分考试均及格者,由教育部考试中心颁发统一印制的合格证书。,学,C,语言,就是学思考问题的过程和解决问题的能力。,二级C语言培训介绍,实实在在学知识,顺顺利利过考试,学,C,语言,就是学思考问题的过程和解决问题的能力。,如何学二级C语言,多看书,多实践验证,多读(背)程序,学,C,语言,就是学思考问题的过程和解决问题的能力。,第一章 程序设计基本概念,什么是,C,程序?,高级语言 机器语言,源程序 目标程序,编译程序,学,C,语言,就是学思考问题的过程和解决问题的能力。,第一章 程序设计基本概念,C,语言编译“三部曲”,C,源程序 目标文件 可执行文件,.,C .obj .exe,编译,连接,学,C,语言,就是学思考问题的过程和解决问题的能力。,第一章 程序设计基本概念,程序设计过程,确定数据结构(输入输出),确定算法(解决问题的方法和步骤),编码。(算法代码化),调试程序。(改错和修正),整理和写文档。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第一章 程序设计基本概念,结构化程序的三种结构,顺序结构(先后顺序执行),选择结构(执行不同分支的语句),循环结构(重复执行多次或一次不执行,),学,C,语言,就是学思考问题的过程和解决问题的能力。,第一章 程序设计基本概念,模块化结构,由一个个功能模块构成的程序结构为模块化结构。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,语言示例一,输出一行信息:,Wellcome to Sinree!,程序名为,sinree_c1.c。,#include /*,命令行,表示文件包含*/,main()/*,主函数*/,printf(“Wellcome to Sinree!n); /*,输出信息*/,程序输出结果,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,语言示例二,输入两个整数,输出它们的和。,程序名为,sinree_c2.c。,#include /*,文件包含*/,main()/*,主函数*/,int a,b,c;/*,声明定义变量,a,b,和,c*/,scanf(%d%d, /*,输入变量,a,和,b,的值*/,c=a+b;/*,计算,c,等于,a,与,b,的和值*/,printf(c=%dn,c);/*,输出变量,c,的值*/,运行程序输入:,90,7,程序结果:,C=97,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,语言示例三,输入两个整数,通过调用函数计算它们的和,然后输出和值。,程序名为,sinree_c3.c。,#include stdio.h/*,文件包含*/,int sum(int x,int y)/*,定义,sum,函数*/,int z;/*,声明定义变量,z*/,z=x+y;/*,计算,z,等于,x,与,y,的和值*/,return (z);/*,将,z,的值返回,通过,sum,带回调用处*/,main()/*,主函数*/,int a,b,c;/*,声明定义变量,a,b,和,c*/,scanf(%d%d,/*,输入变量,a,和,b,的值*/,c=sum(a,b);/*,调用,sum,函数,将得到的值赋给,c*/,printf(c=%dn,c);/*,输出变量,c,的值*/,运行程序输入:,90 7,程序结果,C=97,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,VC+ 6.0,编辑环境,编辑区,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,VC+ 6.0,编辑环境,启动,Visual C+ 6.0,环境,编辑源程序文件,编译,连接,执行,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,VC+ 6.0,编辑环境,编译,CtrlF7,连接,F7,运行,Ctrl+F5,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序的构成和格式,任何函数(包括主函数,main()),都是由函数说明和函数体两部分组成。 其一般结构如下:,函数类型 函数名(函数参数表),/*函数说明部分*/, 说明语句部分;,/*函数体部分*/,执行语句部分;,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序的构成和格式,C,语言是由函数组成的,一个,C,源程序可由一个,main,函数和若干个其他函数组成,其中必须有一个且只能有一个,main,函数。,C,程序总是从,main,函数开始执行。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序的构成和格式,C,程序语句和数据定义必须以分号“;”结束。,C,语言中,分号是程序语句的结束标志,也是,C,语句的必要组成部分。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序的构成和格式,C,语言严格区分大小写。,如变量,a,和变量,A,系统认定为两个不同的变量。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序的构成和格式,C,语言数据输入和输出是由库函数实现的。,C,语言本身没有输入输出语句。输入和输入操作是由库函数,scanf,和,printf,等函数来实现的。,所以一般,C,程序都要使用命令行语句 #,include ,注意:命令行以#开头,行尾不能加 ; 号,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序的构成和格式,C,语言用/*注释内容*/形式进行程序注释,在“,/*,”和“,*/,”之间的所有字符都为注释符,,C,系统不对注释符进行编译。(另外可以用/用于单行注释),注意:注释不能嵌套使用。如/* /*/*/,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序书写格式建议,1.,C,程序书写格式自由。,对于短语句可以多条语句书写在同一行,也可以将长语句分写在多行。但需要注意,分行时不能将一个单词分开,也不能将双引号引起来的字符串分开。我们提倡一行一条语句的风格。,2.,C,程序书写采用缩进格式。,根据语句的从属关系,程序书写时采用缩进格式,使程序语句的层次结构清晰,提高程序的可读性。同一层次语句要左对齐,不同层次的语句要缩进若干个字符,这样程序层次清楚,便于阅读和理解。,3.程序中适当使用注释信息。,在书写程序时,适当地加入注释同样可增加程序的可读性。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序标识符,C,语言中 ,符号的命名必须遵守一定的规则,按此规则命名的符号称为标识符。合法的标识符命名规则为:,标识符可以由字母、数字和下划线组成,并且第一个字符必须为字母或下划线。,提醒:,c,语言标识符中大写字母和小写字母被认为是两个不同的字符,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序标识符分类,关键字(由,C,语言预先规定的,见附录4),预定义标识符(预先定义且具有特殊含义),用户标识符(见名知义),学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,C,程序常量和变量,关于常量、变量及数据类型说明的程序实例,程序名为,sinree_c3.c。,#include ,main(), int a=3;/*,定义整型变量,a,并赋予常量值3 */,short r=6; /*,定义短整型变量,r,并赋予常量值6*/,char c=a; /*,定义字符变量,c,并赋予字符常量值,a */,float pi=3.14; /*,定义单精度实型变量,pi,并赋予实型常量值3.14 */,double s; /*,定义双精度实型变量,s */,s=pi*r*r; /*,将,pi*r*r,值赋给,s */,printf(int:%d,short:%d,char:%d,float:%d,double:%dn,sizeof(a),sizeof(r),sizeof(c),sizeof(pi),sizeof(s);,/*,输出各变量占内存的字节数 */,printf(a=%d,r=%d,c=%c,pi=%f,s=%lfn,a,r,c,pi,s);,/*,输出各变量的值 */,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,常量 :在程序运行过程中,其值不能改变的量。,根据数据类型可以分为数值型(有正、负之分)【 整型常量(不带小数点)、实型常量(必须用小数点)】、字符常量(如,a、d,)和字符串(“,ncre”、”beijing”),常量。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,符号常量,#,include ,main(),double r,s,l;,r=5.0;,s=,3.14,*r*r;,l=2*,3.14,*r;,printf(s=%f,l=%fn,s,l);,符号常量,#include ,#define,PI 3.14,main(),double r,s,l;,r=5.0;,s=,PI,*r*r;,l=2*,PI,*r;,printf(s=%f,l=%fn,s,l);,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,符号常量,用#,define,命令行(不是语句,所以后面不能加分号)定义一个字符(通常用大写字母)代表一个常量 。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,变量: 在程序运行过程中值可以改变的量。,变量实质上代表了内存中的某个存储单元。,变量必须先定义后使用。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,整型变量,十进制: 0 1 2 3 4 5 6 7 8 9,八进制: 0 1 2 3 4 5 6 7,c,程序中八进制开头加0,十六进制:0 1 2 3 4 5 6 7 8 9,a b c d e f,c,程序中十六进制开头加 0,x,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,整型常量,#include ,main (),int a=12;,printf(a=%d,a=%o,a=%#o,a=%x,a=%#xn,a,a,a,a,a);,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,整型变量,基本型: 用,int,关键字进行定义,int k;,一个定义语句用一个;结束,多个变量用,隔开,int k,m,n;,(,仅开辟存储单元,不存放初值,此时变量值无意义),变量初始化:,int m=1,n=2,k=3;,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,整型数据分类,短整型:,short int,长整型:,int,或,long int,无符号型:,unsigned,在,vc,6.0中整型常量后面加一个字母,l,或,L,在无符号整数常量后加,u,或,U,若长整型无符号可以加,lu,或,LU,学,C,语言,就是学思考问题的过程和解决问题的能力。,数据类型名,说明,Visual C+ 6.0,环境,Turbo C2.0,环境,字节,取值范围,字节,取值范围,short int,短整型,2,-3276832767,2,-3276832767,signed short int,带符号短整型,2,-3276832767,2,-3276832767,unsigned short int,无符号短整型,2,065535,2,065535,int,整型,4,-21474836482147483647,2,-3276832767,signed int,带符号整型,4,-21474836482147483647,2,-3276832767,unsigned int,无符号整型,4,04294967295,2,065535,long int,长整型,4,-21474836482147483647,4,-21474836482147483647,signed long int,带符号长整型,4,-21474836482147483647,4,-21474836482147483647,unsigned long int,无符号长整型,4,04294967295,4,04294967295,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,整数在内存中的存储形式,一个字节中的最右边一位称为最低位;,一个字节中的最左边一位称为最高位;,对于一个有符号整数,最高位用来存放整数的符号,称为符号位。若是正整数,最高位放置0,若是负整数,最高位放置1。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,整数在内存中的存储形式,正整数: 原码表示。,负整数: 补码表示。(取反加1),二进制转十进制 为 取反减1,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,实型数据,小数形式:由数字和小数点组成的一种实数表示形式。(必须有小数点),指数形式:以“,e”,或“,E”,跟一个整数来表示以10为底的幂, “,e”,或“,E”,之前必须有数字,且“,e”,或“,E”,后面的指数必须为整数。( “,e”,或“,E”,的前后以及数字之间无空格),学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,实型数据,单精度,float 4,个字节,双精度,double 8,个字节,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,算术表达式,基本算术表达式:,+、-、*、/、%,(%运算对象为整型),注意:,+、-可以看做单目,也可看做双目运算符号。,双目运算符两边运算数的类型一致,则所得结果的类型与运算数的类型一致。如:1.0/2.0=0.5 =0;,若不一致,自动进行类型转换,转换的原则为“就大”,所有实型数运算都以双精度方式进行。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,运算符的优先级,单目运算符“+”和“-”的结合性是从右到左。,在算术表达式中,可以使用多层圆括号,但左右括号必须配对。,若包含不同优先级的运算符,则按运算符的优先级由高到低进行,若相同,则按结合方向进行。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,强制类型转换表达式,(类型名)(表达式),如 (,int)3.234,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,赋值表达式,“=”,赋值运算符,赋值运算的功能是先求出右边表达式的值,然后把此值赋给 赋值号左边的变量。,注意: 赋值运算符优先级别仅高于逗号运算符;且结合性为自右向左;赋值表达式的值为最左边变量所得的新值。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,复合赋值表达式,+=,n+=2 n=n+2,-=,n-=2 n=n-2,*=,n*=2 n=n*2,/=,n/=2 n=n/2,%=,n%=2 n=n%2,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,复合运算中的类型转换,两侧不一致 ,把右侧数值按左侧变量类型进行转换。也可用强类型转换的方式人为的转换。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,自加、自减、逗号运算符,自加 + 使运算对象值加1,自减 - 使运算对象值减1,+,i,i,+,+,i,;,i,+ ;,i,的 值都加1 前缀加1,后缀不加1,-,i,i -,-,i,;,i,-,;,i,的 值都减1 前缀减1,后缀不减1,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,#include ,main(),int i=1,j=1,m=1,n=1,k=1;,printf(i=%dn,i);,m=i+;,printf(i=%d,m=%dn,i,m);,printf(j=%dn,j);,m=+j;,printf(j=%d,m=%dn,j,m);,printf(n=%dn,n);,m=n-;,printf(n=%d,m=%dn,n,m);,printf(k=%dn,k);,m=-k;,printf(k=%d,m=%dn,k,m);,学,C,语言,就是学思考问题的过程和解决问题的能力。,第二章 C程序设计的初步知识,逗号运算符和逗号表达式,表达式1,表达式2, 表达式,n,结合性:从左到右,最后一个表达式的值就是此逗号表达式的值。逗号运算符的优先级最低。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,顺序结构:在程序中按语句出现的顺序逐条执行。,赋值语句:在赋值表达式的尾部加上一个“;”号。应出现在函数的可执行部分。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,数据输出:把数据从计算机内部送到计算机外部设备上的操作。,在,VC 6.0,环境下,在调用输入和输出的库函数之前要求在源程序中出现包含头文件,stdio.h,的命令行。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,printf,函数,printf(,格式控制,输出项1,输出项2,),格式控制是字符串形式,作用是将要输出的数据按照指定的格式输出和提供需要原样输出的文字或字符。,如:,d%、f%、e%,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,格式字符,%c %d %o (%#o) %x (%#x),%u %f %e %s %p %,长度修饰符,在 %和格式字符之间,可以加入长度修饰符,以保证数据输出格式的正确和对齐。长整%,ld,短整 %,hd,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,宽度说明:,%和格式字符之间插入一个整数常数来指定输出的宽度,n,对于,float,和,double,的实数,可以用,n1.n2,的形式来输出,或者用.,n2,输出。,在 %,d,和宽度之间加“-”实现数据左对齐,加“+”在每一个数字前面带正负号。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,注意事项,一般在多个输出数之间留逗号、空格或者回车。,要输出%符号,在格式控制符中用%,printf,函数有返回值,返回值是本次调用输出字符的个数,包括回车等控制符。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,scanf,函数,scanf(,格式控制,输入项1,输入项2,),主要作用是指定输入时的数据转换格式 ,输入项之间用逗号隔开,对于,int,float,double,类型变量,在变量之前必须加&符号作为输入项。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,格式字符,%,c %d %i,%o %x %u %f %e %s,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,输入整数或者实数这类数值型数据时,输入的数据之间必须用空格、回车符号等间隔符号隔开。,可以指定输入数据所指定的宽度,一般在使用输入函数前使用输出函数对输入数据进行说明,且尽量不要使用通配符。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,复合语句和空语句,语句1;,语句2;,语句,n;,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,空语句,只有一个分号的语句。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,例题3.1,A B,提问:,若,A,和,B,桶都装了水(不一定是装满),请问如何将,A,和,B,桶中的水调换?(,A,B,的容积不受限制),学,C,语言,就是学思考问题的过程和解决问题的能力。,第三章 顺序结构,例题3.2,注意:,十进制小数点移位是通过10的,n,次方的乘除来实现.,四舍五入在,c,语言中的操作:可以通过将小数点移动到舍入数位前,加0.5,然后取整来实现,最后再将小数点移回.,强类型转换前要加括号.,double,类型在使用,scanf,输入变量时,使用%,lf,格式控制符.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,选择结构:根据判断的结果(逻辑值)决定程序的不同流程.,逻辑值:关系运算和逻辑运算都会得到一个逻辑值,C,语言中,0代表逻辑值“假”,非0(正数或者负数)代表“真”.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,关系运算:比较运算,进行两个数的比较,判断比较的结果是否符合指定的条件.,关系运算符:, = =!=,小于 小与等于 大于 大于等于 等于不等于,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,注意:,两个字符之间不允许有空格,关系运算符是双目运算符,具有从左至右的结合性,、=优先级相同,但高于优先级相同的=、!=如,a=b关系运算符优先级赋值运算符优先级 如,a=b&| 如,b|c&!d,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,优先级比较,!算术关系&|赋值,如:,f=a|b=!c+d&e,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,逻辑运算规则,非运算!0为1 !1为0,是否,与运算1&1为1,同时满足条件,0&1 1&0 0&0 为0,或运算 0|0为0,不满足任何一个条件,0|1 1|0 1|1为,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,逻辑运算规则,非运算!0为1 !1为0,是否,与运算1&1为1,同时满足条件,0&1 1&0 0&0 为0,或运算 0|0为0,不满足任何一个条件,0|1 1|0 1|1为,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,逻辑运算规则,关系式 0,x10,在,c,语言中的表达,0,x&x10,&,或|逻辑表达式“短路”现象,当,A,为0时,不需计算,B,可知,A&B,为0,当,A,为1时,不需计算,B,可知,A|B,为1,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,if,语句,if(,表达式) 语句,if(,表达式) 语句1,else,语句2,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,if,语句,if(,表达式) 语句,如,if (a10?100:200,x0?(-1)*x:x,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,switch,表达式构成的选择结构,switch (,表达式),case,常量表达式1:语句1,case,常量表达式2:语句2,case,常量表达式,n:,语句,n,default :,语句,n,通常和,break,语句联合使用,当执行到,break,时,立即跳出,switch,语句.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第四章 选择结构,语句标号和,goto,语句,goto stop;,stop:printf(“endn”);,学,C,语言,就是学思考问题的过程和解决问题的能力。,第五章 循环结构,while,语句和用,while,语句构成的循环,while(,表达式) 循环体,例如:,k=0;,while (k10),printf(“*”);,k+;,学,C,语言,就是学思考问题的过程和解决问题的能力。,第五章 循环结构,do-while,语句及其循环,do,循环体,while(,表达式);,例如:,do, i+;s+=i;,While(i10);,学,C,语言,就是学思考问题的过程和解决问题的能力。,第五章 循环结构,for,语句及其循环,for(,表达式1;表达式2;表达式3),循环体,例如:,for(k=0;k10;k+),printf(“*”);,表达式1;,While(,表达式2),循环体;,表达式3;,等价形式,学,C,语言,就是学思考问题的过程和解决问题的能力。,第五章 循环结构,break,语句和,continue,语句,Break,在循环结构中终止本层循环体;,Continue,跳过本次循环体中余下尚为执行的语句,立刻进行下一次的循环条件判定,可以理解为仅结束本次循环.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符型常量,C,语言中,一个字符常量代表,ASCII,字符集(见附录七)中的一个字符,用单引号把一个字符括起来作为字符常量.,例如:,a,为标识符,a,为字符型常量.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符型常量,注意:,大写字母和小写字母的,ASCII,值不同,因而代表不同的字符常量.,单引号中的空格也是一个字符常量.,字符常量只能包含一个字符.,字符常量只能用单引号括起来,不能用双括号.,字符常量在内存中占一个字节,存放的是字符的,ASCII,代码值.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符型常量,转义字符常量 特定字符,n,回车 反斜杠 单引号 “ 双引号,ddd,三位八进制代表的一个,ASCII,字符,xhh,二位十六进制代表的一个,ASCII,字符,注意:转义字符常量只代表一个字符.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符串常量,字符串常量是由双引号括起来的一串字符.在,c,语言中,系统在每个字符串的最后自动加入一个字符0作为字符串的结束标志.,注意:“”称为空串,也是一个字符串常量,占用一个字节的存储空间.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符量的运算,在,C,程序中,字符量可参与任何整数运算.,大小写字母的转换:大写字母,ASCII,值=小写字母,ASCII,值-32,可以将数字字符转换成整数值,也可以将整数值转换成数字字符.,字符量可以进行关系运算.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符变量,用关键字,char,进行定义,char ch1=a;,字符变量可以参与整型变量允许的运算,有可以使用与字符处理相关的库函数.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,字符的输入和输出,printf,输出字符时使用格式说明符%,c,也可以在,c,前加入整数来指定输出字符时所占的宽度.,用,scanf,输入字符时也用格式说明符%,c,当%,c,一个接一个时,字符之间不应有间隔符号(如回车,空格).,学,C,语言,就是学思考问题的过程和解决问题的能力。,第六章 字符型数据,putchar,和,getchar,输入和输出函数,putchar,输出字符,putchar(ch);,getchar,输入字符,ch=getchar();,注意:只有在用户敲入,enter,键时,读入才开始执行.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,一个实用的,c,语言源程序总是由许多函数组成.,这些函数中可以调用,c,提供的库函数,也可以调用由用户或他人编写的函数.,c,源程序在正常情况下总是从,main,函数开始执行,main(),结束.,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,熟悉,c,语言提供的丰富库函数,应正确调用.,调用,c,语言标准库函数要求使用,include,命令行.,include,命令行必须以#开头,系统提供的头文件以.,h,为文件的后缀,文件名用一对双引号“”或一对尖括号括起来.,标准库函数的调用形式:出现在表达式中或者作为独立的语句完成某种操作。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数的定义与返回值,函数定义的语法,函数返回值的类型名 函数名(类型名 形式参数1,类型名 形式参数2,),说明部分,语句部分,注意:不能在函数的内部定义函数 。,函数名和形式参数都是用户命名的标识符,同一程序中,函数名必须唯一,形式参数名只要在同一函数中唯一即可。,若在函数的首部省略了函数返回值的类型名,则默认函数返回值的类型为,int,类型。除了返回值类型为,int,类型的函数外,函数必须先定义(或说明)后调用。若函数只是用于完成某些操作,没有函数值返回,则必须把函数定义成,void,类型。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数的定义与返回值,如:,double add (double a,double b),double s;,s=a+b;,return s;,函数体中,除形参外,用到的其他变量必须在说明部分进行定义,这些变量(包括形参 ),只在函数被调用时才临时开辟存储单元,当退出函数时,这些临时开辟的存储单元全部被释放掉,因此这种变量只在函数体内部起作用,与其他函数体中的变量互不相干,它们可以和其他函数中的变量同名。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数的定义与返回值,如:,double add (double a,double b),double s;,s=a+b;,return s;,函数的值通过,return,语句返回,,return,语句的形式如下:,return,表达式; 或,return(,表达式);,return,语句中表达式的值就是所求的函数值,此表达式值的类型必须与函数首部所说明的类型一致。若类型不一致,则以函数值的类型为准,由系统自动进行转换。,当程序执行到,return,语句时,程序的流程就返回到调用该函数的地方,并带回函数值。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数的定义与返回值,如:,double add (double a,double b),double s;,s=a+b;,return s;,在同一个函数中,可以根据需要在多处出现,return,语句,在函数体的不同部位退出函数,但,return,只可能执行一次,return,语句中也可以不含表达式,这时必须定义函数为,void,类型,函数体内可以没有,return,语句,这时必须定义函数为,void,类型,程序的流程就一直执行到函数末尾的“”,然后返回调用函数,也没有确定的函数值带回。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数的两种调用方式,函数的一般调用形式为:,函数名(实参表),若函数无形参,调用形式为,函数名(),一般情况下,可用两种方式调用函数:,当所调用的函数用于求出某个值时,函数的调用可作为表达式出现在允许表达式出现的任何地方。,当函数仅进行某些操作而不返回函数值,这时函数的调用可作为一条独立的语句。,当实参个数多于一个时,各实参之间用逗号隔开。,实参的个数必须与所调函数中的形参相同,,类型一一对应匹配。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数调用的语法要求,调用函数时,函数名必须与所调用的函数名字完全一致。,实参的个数必须与形参的个数一致。实参可以是表达式,在类型上应按位置与形参一一对应。,函数必须先定义后调用(函数的返回值类型为,int,或,char,时除外).,函数可以直接或间接的自己调用自己,称为递归调用。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数说明的形式,函数说明的一般形式,类型名 函数名(参数类型1,参数类型2,),也可以采用下面的形式,类型名 函数名(参数类型1 参数1,参数类型2 参数2,),函数说明可以是一条独立的说明语句,也可以与普通变量一起出现。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,函数说明的形式,对函数进行说明能使,c,语言的编译程序在编译时进行有效的类型检查。,当在所有函数的外部、被调用之前说明函数时,在对函数进行说明的语句后面所有位置都可以对函数进行调用。,函数说明也可以放在调用函数内的说明部分。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第七章 函数,调用函数和被调用函数之间的数据传递,三种方式:,1、实参和形参之间进行数据传递,2、通过,return,语句把函数值返回。,3、通过全局变量。,在,C,语言中,数据只能从实参单向传递给形参,称为“按值”传递,也即是说,当简单变量作为实参时,用户不可能在函数中改变对应实参的值。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,变量的地址和指针,a b,1012 1013 1201 1202 1203 1204,一个变量实质上是代表了“内存中的某个存储单元”,若在程序中定义了一个变量,,c,编译系统就会根据定义中变量的类型,为其分配一定字节数的内存空间。,每个变量的地址是指该变量所占存储单元的第一个字节的地址。,直接存取:直接按变量的地址存取变量值的方式。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,变量的地址和指针,p p a,2002 2002 1012 1013,存放地址的变量称为“指针变量”。,间接存取:通过指针变量间接存取变量值的的方式。,“指针变量,p,指向了变量,a”,就是指针变量,p,中存放了变量,a,的地址。,在,c,语言中,指针被广泛运用,它和数组、字符串、函数间数据的传递等有着密不可分的联系。,1012,1012,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,指针变量的定义和指针变量的基类型,定义指针变量的一般形式如下:,类型名 *指针变量名1,*指针变量名2,.;,如,int *pi,*pj;,double *pd;,我们称,int、 double,是指针变量的基类型。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,指针变量的定义和指针变量的基类型,如:,int *p,*s,k=20;,s=,p=,对于基类型不同的指针变量,其内容(地址值)增1、减1所跨越的字节数是不同的,因为指针移动的最小单位。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,给指针变量赋地址值,通过求地址运算符&获得地址值,int k=1,*p,*q;,q=,通过指针变量获得地址值,p=q;,通过标准函数获得地址值,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,给指针变量赋“空”值,p=NULL;,NULL,是在,stdio.h,头文件中定义的预定义符,因此在使用,NULL,时,应该在程序的前面出现预定义行 #,include ,NULL,的代码值为0,因此以上代码等价于,p=0;,或,p=0;,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,对指针变量的操作,通过指针来引用一个存储单元,当变量中存放了一个确切的地址值时,可以用“间接访问运算符”*通过指针来引用该地址的存储单元。,如,int *p,j=10,m;,p=,m=*p;,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,对指针变量的操作,间接访问运算符*是一个单目运算符,必须出现在运算对象的左边,其运算对象是存储地址的指针变量或者是地址。,注意:,+和*具有相同优先级,结合性为从右到左,+*p *p+=1,(*p)+ *p+=1,*p+ p+=1,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,对指针变量的操作,移动指针:对指针变量加上或减去一个整数,或通过赋值运算,使指针变量指向相邻的存储单元。,在对指针进行加、减运算时,数字“1”不再代表十进制整数“1”,而是指1个存储单元长度。1个单元长度的字节数,根据指针的基类型而定。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,对指针变量的操作,指针比较,在关系表达式中可以对两个指针进行比较,,如:,int *p,*q;,if(pq) printf(“p points to lower memory”);,if(p=0) printf(“p points to NUll”);,学,C,语言,就是学思考问题的过程和解决问题的能力。,第八章 地址和指针,函数之间地址值的传递,形参为指针变量时实参和形参之间的数据传递,通过传送地址值在被调用函数中直接改变调用函数中的变量的值。,函数返回地址值。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第九章 数组,数组,一组具有同一类型的变量,在内存中占有连续的存储单元,在,c,语言中,可以用,a0、a1、a2、,这种形式来表示数组中连续的存储单元,我们把它们称为“带下标的变量”或数组元素。,学,C,语言,就是学思考问题的过程和解决问题的能力。,第九章 数组,一维数组的定义,一维数组:数组中每个元素只带有一个下标,形式: 类型名 数组名整型常量(表达式),如:,int a8;,a0 a1 a2 a3 a4 a5 a6 a7,学,C,语言,就是学思考问题的过程和解决问题的能力。,第九章 数组,一维数组的定义,如:,int a8
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!