c语言程序设计基本概念考点归纳_第1页
c语言程序设计基本概念考点归纳_第2页
免费预览已结束,剩余63页可下载查看

下载本文档

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

文档简介

1、第 1 章 程序设计根本概念考点归纳1.1 C 说话的特色C 说话是近年来异常风行的说话,许多人情愿废弃已经熟习的 其他说话而改用 C 说话,其原因是 C 说话有优于其他说话的一系列 特色.下面是C说话的重要特色:(1) 说话简练.紧凑,并且运用便利灵巧;(2) 运算符丰硕;(3) 数据构造丰硕;(4) 具有构造化的掌握语句;(5) 语法限制不太严厉,使程序设计比较自由;(6) C 说话许可用户直接拜访物理地址,能进行位(bit)操纵, 可以直接对硬件进行操纵.1.2 源程序的书写规矩C 说话的书写规矩.C 说话书写格局自由,一行内可以写几个语 句,一个语句也可以分写在多行上.C 程序没有行号

2、,每个语句和数 据界说的最后必须有一个分号.C 说话平分号是语句中不成少的,即使是程序中的最后一个语句也应当包含分号.C说话中的注释可 以用 /* 用 */ 停止,注释可以在任何许可拔出空格符地方拔 出.C 说话中注释不许可嵌套,注释可以用西文,也可以用中文.1.3 C 说话的作风因为 C 说话对语法限制不太严厉,为了包管程序的精确性和可 读性,建议在书写程序采取阶梯缩进格局 .也就是按如下格局书写 C 说话程序:* 5*()* 5*.归纳综合起来,C 说话程序具有如下的作风:1C 说话程序的函数具体模块构造作风,使得程序整体构造清楚层次清楚,为模块化程序设计供给了强有力的支撑.2C 说话的源

3、程序的扩大名都是.C.3C 说话中的注释格局为:/*注释内容*/与*之间不许可有空格,注释部分许可出如今程序中的任何地 位.4C 说话中的所有语句都必须以分号“;”停止.第 2 章 C 程序设计的初步常识考点归纳2.1 程序的构成尽管 C 程序的内容千变万化,但是它们的构成都是一致的,个完全的 C 源程序的格局可以如下暗示:编译预处理主函数()函数()从上面中可以看出,一个 C 源程序实际上就是若干函数的聚集 这些函数中有一个是程序的主函数,任何 C 的源程序履行时,都是从主函数开端履行的,其它的函数最终势必被这个主函数所挪用.C说话除了主函数划定必须取名main 外,其它的函数名可以任取,但

4、是要相符 C 的标识符取名规矩,别的留意不要与保存字重名,最好 也不成与 C 说话中的库函数或其它一些敕令如编译预处另敕令重 名各个函数在程序中所处的地位其实不是固定的,但请求一个函数是完全的.自力的.不许可出如今一个函数内部又去界说另一个 函数,或是函数格局不齐备的现象.一个完全的一般意义上的函数 有一个固定的框架,编写具体的函数时,只需在这个框架中填入响 应的内容即可.框架如下:函数类型 函数名(形参)形参解释内部变量解释;履行语句部分;2.2 C 说话的根本词法C 说话的根本词法由三部分构成:符号集.症结字保存字.符号集就是一门说话中许可消失的字符的聚集,C 说话的符号集就是 ASCH码

5、表中的一些字符,在键盘上不克不及直接得到(比 方说响铃字符),C 说话引入了转义字符的概念,运用反斜杠符号 后加上字母的一个字符组合来暗示这些字符,当在源程序中碰到这类字符组应时,固然这个字符组合是一个字符串的情势,但 C说话仍会主动将之懂得成某一特定的字符.比方 ,C 说话在处理这个字符组应时,会主动懂得成回车换行符号.转义字符经由 进一步引申运用,形成了别的两种情势: ddd和 xnn,这里 后的 ddd 和 xnn分离代表三位八进制和两位十六进制 数(打头的 x只是标明后面跟着的是十六进制数),这两种情势不再局限于暗示不成打印的字符,它们可以暗示ASCH码表中的随 意率性字符,只要把所需

6、暗示的字符的 ASCII 码转换成八进制数或 十六进制数即可.比方说字母 A,ASCII 码为 65,65 的八进制和 十六进制分离为101和x41,所以,字母A可暗示为 101 或 x41 ,对转义字符应卖力懂得.标识符就是用以标识的符号.正如实际生涯中给每一小我都取 一个名字一样,C 说话中的每一个对象(如函数.变量等)都必须取 一个标识符以和其它对象差别开 .在 C 说话中,这个标识符是一个 字符串,这个字符串的选定有必定的规矩:必须是以字母或下划线开首的字母与数字的序列.除了这个根本的规矩外,C 说话对标识 符的定名还有几个限制需加以留意:长度最好不要超出八个字 符.因 C 中对标识符

7、只处理前 8个字符,超出 8 个长度的部分将被C 主动疏忽失落. ABCDEFGH1 和 ABCDEFH2是统一个标识符;标识符不要与保存字同名,最好也不要与 C 供给的尺度标识符,如库函数重名;应留意 C 说话对大小写字母是迟钝的,Abcd 和 abed 是两个不合的标识符.症结字实际上就是一些特别的标识符,又称保存字,这些保存字不许可用户对它从新界说.2.3 头文件.数据解释.函数的开端和停止标记1. 头文件:也称为包含文件或标题文件,一般放在一个 C 说话程序的开首,用伽 elude 文件名的格局,个中文件名是头文件名,一般用.h 作为扩大名.2. 数据解释: C 说话中的数据分常量和变

8、量两种 .3. 常量:稀有值常量和符号常量两种.4. 数值常量:可以分为整型常量 .实型常量.浮点型常量和字 符常量.5. 符号常量:用一个标识符代表的一个常量,又称标识符情势 的常量.6. 变量:其值可以转变的量,变量名习惯上用小写字母暗示7. 标识符:用来标识变量名.符号常量名.函数名.数组名.类 型名.文件名的有用字符序列.8. 标识符的定名规矩:C 说话中标识符只能由字母.数字下划线三种字符构成,且第一个字符必须为字母或下划线.C 说话是大小写迟钝说话,即对大小写字母以为是不合的字符.C 说话中标识符的长度随体系不合而字,如 TURBO C 中取前 8 个字符,8 个字符 后面的字符会

9、主动撤消.第 3 章次序构造考点归纳3.1 表达式语句.函数挪用语句和空语句1.C说话的语句共分五大类:表达式语句.掌握语句.函数挪用语句.空语句和复合语句.表达式;最典范的表达式语句是由一个赋值表达式加一个分号构成的 赋值语句.3.掌握语句是 C 说话程序设计顶用来构成分支构造和轮回构造的语句.此类语句有 if 语句,for 语句,while 语句,do-while 语 句,switch 语句等.函数名(实参表);这条语句的寄义是什么也不做.凡是在C语句程序中消失语句 的地方都可以用一个分号来代替一条语句.语句 1;语句 2;复合语句在功效上相当于一条语句3.2 数据的输入与输出,输入输出函

10、数的挪用1. C说话本身没有供给输入.输出操纵语句.C程序的输入和输 出完全依附挪用 C 说话的尺度输入.输出函数来完成.四个经常运 用的输入.输出函数是:printf 函数.seanf 函数.putchar 函数.getchar 函数2. printf函数是 C 说话供给的尺度输出函数,它的感化是在终端装备(或体系隐含指定的输出装备)上按指定格局进行输出.Pri ntf函数的一般挪用情势如下:printf(格局掌握,输出项表)假如在 printf 函数挪用之后加上;,就构成了输出语句.通俗字符:将被简略地显示格局字符:将引起一个输出参数项的转换和显示,由“引出并以一个类型描写符停止的字符串,

11、中央可加一些可选的附加解释 项,如下表所示.格局掌握参数以字符串的情势描写,由两部分构成:附加解释项附加解释项说明-或+用于指定是否对齐输出,具有“-”符号暗示左对齐,无“-”或有“ +”暗示右对齐0 用于指定是否填写 0,有此项暗示空位用 0 填补,无此项暗 示以空格填补m.n 用于指定输出域宽及精度,m 是指域宽,n 为精度,当指定 n 时,隐含的精度为 6 位L 或 h 用于输出长度修改.个中,1 对于整型是指Iong,对实型 是 double;h 只用于整型的格局字符,并修改为 short 型格局字符用于指定输出项的数据类型及输入格局,如下表所示留意:编译程序只是在检讨了 printf

12、 函数中的格局参数后,才干肯定有几个输出项,是什么类型.以什么格局输出.在编程序时 应使输出格局与输出项对应 .格局字符格局字符说明CcD 输出一个字符d 或 I 输出带符号的十进制整型数OoO 以八进制无符号情势输出整型数(不带前导0)x 或 X 以十六进制无符号情势输出整型数(不带前导 Ox 或0X),对于 x,用 abcdef 输出十六进制数码;对于 X,用ABCDE 喻出 十六进制数码UuU 按无符号的八进制情势输出整型数FfF 以小数的情势输出单精度或双精度数,小数位由精度指定 隐含的精度为 6;如指定精度为 0,则小数部分(包含小数点)都不输 出e 或 E 以指数情势输出单精度及双

13、精度数,小数位数由精度指 定,隐含的精度为 6;如指定精度为 0,则小数部分(包含小数点)都 不输出g 或 G 由体系决议是采取 %f 不是采取e 格局,以便使输出宽 度最小SsS 输出字符串中的字符,直到碰到 0时为止,或输出指 定的字符数PpP 输出变量的内存地址%打印一个%3. scanf 函数是 C 说话供给的尺度输入函数,它的感化是在终 端装备(或体系隐含指定的输入装备)上输入数据.Scanf 函数的一 般挪用情势是:scanf(格局掌握,输入项表)假如在 scanf 函数挪用之后加上;,就构成了输入语句.格局掌握是用双引号括起来的字符串,称为格局掌握串.格局掌握串的感化是指定输入时

14、的数据转换格局,即格局转换解释.格局转换解释是由 ,符号开端,厥后是格局描写符输入项表中的各输入项用逗号离隔,各输入项只能是正当的地址表达式,即在变量之前加一个地址符号& .在 seanf 函数中每个格局解释都必须用开首,以一个格局字符停止.Seanf 函数中的格局掌握字符与printf 函数中的类似,由格局解释项与输入格局符构成.格局解释项如下表所示.格局解释项格局解释项说明%肇端符*赋值克制符,用于按格局解释读入数据,但不送给任何变量MmM 域宽解释l 或 h 长度修改解释符seanf 中的格局字符如下表所示.格局解释项说明CeC 输入一个字符DdD 输入十进制整型数lil输入整型

15、数,整数可所以带前导 0 的八进制数,带前导0 x(或 0X)的十六进制数OoO 以八进制情势输入整型数(可为带前导 0,也可不带前导 0)XxX 以十六进制情势输入整型数(可带前导 0 x或 0X,也可不带)UuU 无符号十进制整数FfF 以带小数点情势或指数情势输入实型数EeE 与 f 的感化雷同SsS 输入字符串4. putchar 函数的感化是把一个字符输出到尺度输出装备(常指显示器或打印机)上.一般挪用情势为putchar(ch);个中 ch 代表一个字符变量或一个整型变量,ch 也可以代表一个字符常量(包含转义字符常量).5. getchar 函数的感化是尺度输入装备(平日指键盘)

16、上读入 一个字符.一般挪用情势为getchar();getchar 函数本身没有参数,其函数值就是从输入装备得到的 字符.第 4 章选择构造考点归纳4.1 用 if 语句实现选择构造1.在 C 说话中,if 语句有两种情势:情势 1: if(表达式)语句情势 2: if(表达式)语句 1else 语句 22.if 语句履行时,起首盘算紧跟在 if 后面一对圆括号中的表 达式的值,假如表达式的值为非零(真),贝慷行 if 后的语 句,然后去履行 if语句后的下一个语句.假如表达式的值为零( 假) ,直接履行 if 语句后的下一个语句.3.if 语句后面的表达式其实不限于是关系表达式或逻辑表达 式

17、,而可所以随意率性表达式.If 语句中可以再嵌套 if 语句.C 说 话划定,在嵌套的 if 语句中,else 子句老是与前面比来的不带 else 的 if 相联合.4.2 用 switch 语句实现多分支选择构造I. switch 语句是用来处理多分支选择的一种语句.它的一般 情势如下:switch(表达式) case 常量表达式 1 :语句 1case 常量表达式 2:语句 2case 常量表达式 n: 语句 ndefault :语句 n+12.switch 语句的履行进程是:起首盘算紧跟switch 后面的一对圆括号中的表达式的值,当表达式的值与某一个case 后面的常量表达式的值相等时

18、,就履行此 case 后面的语句体并将流程转 移到下一个 case 持续履行,直至 switch语句的停止;若所有的 case 中的常量表达式的值都没有与表达式值匹配,又消失 default,则履行 default 后面的语句,直至 switch 语句停止;假如不消失 default,则跳过 switch 语句体,什么也不做.4.3 选择构造的嵌套if 语句和 switch 语句都可以嵌套运用,特别要留意,对于构 成嵌套的 if 语句,else 子句老是和离它比来的.不带 else 的 if 子句相匹配,不克不及弄混;在一个switch 语句中的 case 后面又 嵌套了一个 switch 语

19、句,在履行内嵌的 switch 语句后还要履行一 条 break 语句才跳出外层的 switch 语句.第 5 章轮回构造考点归纳5.1 for 轮回构造1. for 轮回语句的一般表达式是:for(表达式 1;表达式 2;表达式 3)语句2. C 说话语律例定:轮回体语句只能包含一条语句,若需多条语句,应运用复合语句.5.2 while 和 do while 轮回构造当型轮回构造,它的一般情势如下:while(表达式)语句当表达式为非 0 值时履行 while 语句中内嵌的语句;当表达式 的值为 0 时,直接跳过 while 语句后面的语句,履行下一条语句.2.while 语句履行的特色是:

20、先断定表达式,后履行语句3. do while 用来实现直到型轮回构造,它的一般情势为:do 语句while(表达式);这个语句履行时,先履行一次指定的内嵌的语句,然后判别表 达式,当表达式的值为非 0 时,返回从新履行该语句,如斯重复,直 到表达式的值为等于 0 为止,此时轮回停止.4. do while 语句履行的特色是:先履行语句,后断定表达式.5.3 continue语句和 break 语句1. break 语句有两个用处:在 switch 语句顶用来使流程跳 出 switch 构造,持续履行 switch 语句后面的语句;用在轮回体 内,迫使地点轮回立刻终止,即跳出地点轮回体,持续履

21、行轮回体后 面的第一条语句.2. continue 语句停止本次轮回,即跳过轮回体中尚未履行的语句.在 while 和 do while 语句中,continue 语句将使掌握直接 转向前提测试部分,从而决议是否持续转向轮回.在 for 轮回中,碰 到 continue 语句后,起首盘算 for语句表达式 3 的值,然后再履行 前提测试(表达式 2),最后依据测试成果来决议是否持续转向for轮回.5.4 轮回的嵌套1. 一个轮回体内又包含另一个完全的轮回构造,称为轮回的嵌套.内嵌的轮回中还可以嵌套轮回,这就是多层轮回.2. 三种轮回 (while 轮回.do while 轮回和for轮回)可以

22、互相 嵌套.第 6 章字符型数据考点归纳6.1 字符常量有两种情势:一是用单引号括起来的一个单字符,如a , =;二是转义字符,即以 开首的字符序列经常运用的转义字符见下表.字符情势功能 n 换行t 横向跳格(即跳到下一个输出区) v 竖向跳格 b 退格 r 回车 f 走纸换页反斜杠字符单引号(撇号)字符双引号()字符 ddd 1 到 3 位 8 进制数所代表的字符,如 123,暗示 8 进制 数 123 xhh 1到 2位 16进制数所代表的字符,如 x21,暗示 16 进 制数 23在转义字符赋给字符变量时,也须要在其二侧加单引号,如:char c= n;字符串常量是用一对双引号括起的字符

23、序列,如 abcn .请差别字符变量和字符串常量.a是字符常量, a是字 符串常量.在内存中,字符常量占一个字节,而对字符串常量,则在 字符串的后面加一个字符串停止标记,以便体系据此断定字符串是否停止.用 0 (即 ASCII 代码为 0 的字符,即 空字符)作为字符串停止的标记.例如, a内存占两个字节,即:a 0 .6.2 字符变量字符变量用来存放一个字符常量,字符变量用char 来界说.如:char a,b;a=,0,;b=,k,;printf( ” %c %c n ,a,b);将输出两个字符 ok.不克不及将一个字符串常量赋给一个字符变量,如:a二 0;b二 k ;是错误的.给字符变量

24、赋值可以采取如下三种办法:(1) 直接赋以字符常量,如 char二,A ;(2) 赋以转义字符,如:char c= ,;printf( C ,c);输出一个字符.(3) 赋以一个字符的 ASCII 代码,如字符a,的ASCII 代码为97,则char c=97;printf( ” %c ,c);将输出一个字符 a .实际上,字符数据在内存中是以整数情 势(字符 ASCII 代码)存放的,例如,字符a的 ASCII 码为 97,在 内存字节中的存放情势为:01 10 00 01在输出时,假如指定输出字符的格局符C输出,则输出字符a(在输出时先将 ASCII 码转换为字符)假如指定按输出整 数的格

25、局d 输出(如 printf ( %d ,c) ) ,则输出一个整数 97.应记住,字符数据与整型数据二者间是通用的,可以互相赋值和运算,如:int a= A ;char c=97;print( %d n ,c-a);将输出一个整数 32,因为A的 ASCII 码为 65.第 7 章函数考点归纳7.1 库函数的精确挪用1. C 说话供给了丰硕的库函数,包含经常运用数学函数.对字 符和字符串处理函数.输入输出处理函数等.在挪用库函数时要留 意以下几点:(1) 挪用 C 说话尺度库函数时必须在源程序顶用in elude 敕令,in elude 敕令的格局是:#include 头文件名in elud

26、e 敕令必须以#号开首,体系供给的头文件名都以.h 作 为后缀,头文件名用一对双引号或一对尖括号括起来 .(2) 尺度库函数的挪用情势:函数名(参数表)2. 在 C 说话中库函数的挪用可以以两种情势消失:出如今表 达式中;作为自力的语句完成某种操纵.7.2 函数的界说办法1. C 说话函数的一般情势为:函数返回值的类型名函数名(类型名 形参 1,类型名 形参2,)解释部分语句部分界说的第一行是函数的首部,中的是函数体.2. 在老的 C说话版本中,函数的首部用以下情势:函数返回值的类型名 函数名(形参 1,形参 2)形参类型解释;新的 ANSI 尺度 C 兼容这种情势的函数首部解释.3. 函数名

27、和形参名是由用户定名的标识符 .在统一程序中,函 数名必须独一.情势参数名只要在统一函数中独一即可,可以与函 数中的变量同名.4. C 说话划定不克不及在一个函数内部再界说函数.5. 若在函数的首部省略了函数返回值的类型名,把函数的首部写成:函数名(类型名 形参 1,类型名 形参 2,)则 C 默认函数返回值的类型为 int 类型.6. 当没有形参时,函数名后面的一对圆括号不克不及省略7.3 函数的类型和返回值1. 函数的类型由函数界说中的函数返回值的类型名肯定,函数的类型可所以任何简略类型,如整型.字符型.指针型.双精度型等,它指出了函数返回值的具体类型.当函数返回的是整型值时,可以省略函数

28、类型名.当函数只完成特定的操纵而没有或不须要返回值时,可用类型名 void(空类型).2. 函数返回值就是return语句中表达式的值.当程序履行到return 语句时,程序的流程就返回到挪用该函数的地方(平日称为退出挪用函数),并带回函数值.7.4 情势参数与实际参数,参数值的传递1. 在函数界说中,消失的参数名称为形参(情势参数),在挪用 函数时,运用的参数值称为实参(实际参数).按值进行的,即数据只能从实参单向传递给形参.也就是说,当简略变量作为实参时,用户不克不及在函数中转变对应实参的值第 8 章指针考点归纳8.1 指针与指针变量的概念,指针与地址运算符1. 在 C 说话中,指针是指一

29、个变量的地址,经由过程变量的地 址指向的地位找到变量的值,这种指向变量地址可形象地 看作指针.用来存放指针的变量称为指针变量,它是一种特别 的变量,它存放的是地址值.2. 界说指针变量的一般情势为:类型名*指针变量 1,*指针变量 2,;类型名称为基类型它划定了后面的指针变量中存放的数 据类型, * 号标明后面的指针变量1,指针变量 2等是指针变量, * 号在界说时不克不及省略,不然就会变成一般变量 的界说了 . 指针变量 1,指针变量 2等称为指针变量名.3. 一个指针变量只能指向统一类型的变量.4. 与指针和指针变量有关的两个运算符:(1) * :指针运算符(或称间接拜访运算符)(2) &

30、amp; :取地址运算符经由过程*号可以引用一个存储单元,若有如下界说:int i=123,*p,k;则 p二&I;或 k=*p;或 k=*&I;都将变量 i中的值赋给k.*p=10;或*&i=10;都能把整数 10 赋给变量 i.这里,等号左边 的表达式*p 和*&i 都代表变量 i 的存储单元.8.2 变量.数组.字符串.函数.构造体的指针以及指向它们的指针 变量1. 变量的指针和指向变量的指针变量.2. 数组的指针和指向数组的指针变量所谓数组的指针是指数组的肇端地址,数组元素的指针是数组 元素的地址.C 说话划定命组名代表数组的首地址,也就是第一个元素的地

31、 址.3. 字符串的指针和指向字符串的指针变量.我们可以经由过程界说解释一个指针指向一个字符串C 说话将字符串隐含处理成一维字符数组,但数组的每个元素没有具体的名字,这一点跟字符数组不一样.要引用字符串中的某 个字符,只能经由过程指针来引用:*(s+0),*(s+1),*(s+n).4. 函数的指针和指向函数的指针变量.指向函数的指针变量的一般情势为:数据类型标识符(*指针变量名)();这里的数据类型标识符是指函数返回值的类型函数的挪用可以经由过程函数名挪用,也可以经由过程函数指针挪用(即用指向函数的指针变量挪用).指向函数的指针变量暗示界说了一个指向函数的指针变量,它不是固定指向哪一个函数,

32、而只是界说了如许的一个类型变量,它专门用来存放函数的进口地址.在程序中把哪一个函数的地址赋给它,它就指向哪一个函数.在一个程序中,一个指针变量可以先后指 向不合的函数.在给函数指针变量赋值时,只需给出函数名而不必给出参数 . 因为函数指针赋的值仅是函数的进口地址,而不涉及到实介入形参的联合问题.对指向函数的指针变量,表达式 p+n,p+,p-等都无意义.一个构造体变量的指针就是该变量所占领的内存段的肇端地 址.可以设一个指针变量,用来指向一个构造体变量,此时该指针变 量的值是构造体变量的肇端地址.指针变量也可以用来指向构造体数组中的元素.第 9 章数组考点归纳9.1 一维数组的界说.初始化和引

33、用1. 一维数组的界说方法为:类型解释符 数组名常量表达式(1) 数组名的定名办法与变量名雷同,遵守标识符定名规矩;(2) 数组是用方括号括起来的常量表达式,不克不及用圆括号:(3) 常量表达式暗示数组元素的个数,即数组的长度,数组的下标从 0 开端,下标的最大值为:常量表达式-1;(4) 常量表达式中可以包含常量和符号常量,不克不及包含变量.可以用赋值语句或输入语句使数组中的元素得到值,但要占用运行时光.可以使数组在运行之前初始化,即在编译阶段使之得到 初值.2. 对数组初始化可以用以下办法实现:(1)在界说数组时对数组元素赋以初值.如:static int a 10 = 0,1,2,3,4

34、,5,6,7,8,9;经由上面的界说和初始化后,a :0 =0,a : 1=1,a :9=9.(2) 初始化时可以只对一部分元素赋初值.例如:static int a 10 = 0,1,2,3,4;界说的数组有 10 个元素,但只对个中前 5 个元素赋了初值,后 5 个元素初值为 0.(3) 假如想使一个数组的元素值全体为0,可以用下面的办法:static int a 10 = 0,0,0,0,0,0,0,0,0,0;不克不及用:static int a 10 = 0*10;假如对 static型数组不赋初值,体系会对界说的所稀有组元素主动赋以 0 值.(4) 在对全体数组元素赋初值时,可以不

35、指定命组长度.3. 一维数组的引用办法是:C 说话划定不克不及一次引用全部数组,引用时只能逐个元素引用,数组元素的暗示情势为:数组名下标下标可所以整型常量或整型表达式.如:a :0 =a :5 +a :7 -a :2*3 ;9.2 二维数组的界说.初始化和引用类型解释符 数组名常量表达式常量表达式C 说话采取上述界说办法,我们可以把二维数组看做是一种特 别的一维数组:它的元素又是一维数组.在 C 说话中,二维数组中元素的分列次序是:先按行存放,再按列存放,即在内存中先次序 存放第一行的元素,再存放第二行的元素.2. 二维数组的初始化:二维数组可以用下面的办法初始化:(1) 分行给二维数组赋初值

36、.如:static int a 3 4 = 1,2,3,4 ,5,6,7,8 ,9,10,11,12 ;以上赋值把第一个花括号内的数据赋给第一行元素,第二个花括号内数据赋给第二元素,即按行赋值.(2) 可以将所有的数据写在一个花括号内,按数组分列的次序对各元素赋值.(3) 可以对数组的部分元素赋初值.如:static int a:3 4 = 1 , 5 , 9;以上赋值的成果是:数组第一列的元素分离赋了初值1,5,9,其余元素的值都是 0.(4)假如对二维数组的全体元素都赋初值,则界说数组时对第 一维的长度可以不指定,但第二维的长度不克不及省.3. 二维数组的引用: 二维数组的元素可以暗示为:

37、数组下标下标在引用二维数组时,必须是单个元素,不克不及是全部数组名 下标可所以一个表达式,但不克不及是变量.假如下标是一个表达 式,留意表达式的值不克不及超出数组界说的上 .下限.第 10 章字符串考点归纳10.1 字符串与字符数组界说办法与前面介绍的类似,只是将数组界说为字符型即可 例如:charc 10;这里界说了一个包含 10 个元素的字符数组 c.对字符数组初始化,可以米取以下办法:(1)逐个字符赋给数组中各元素(2)用字符串常量使字符数组初始化.在 C 说话中,字符串是作为字符数组来处理的,字符串可以存 放在字符型一维数组中,故可以把字符型一维数组作为字符串变量字符串常量是用双引号括

38、起来的一串字符.C 说话中商定用 0作为字符串的停止标记,它占内存空 间,但不计入串的长度, 0的代码值为 0.体系对字符串常量也主动加一个0作为停止符.例如 cIanguage 共有 10 个字符,但在内存中占 11 个字节,最后一个字 节存放 0 .(1)逐个字符输入和输出1在尺度输入输出printf 和seanf中运用c格局描写符;2运用 getchar 和 putchar 函数.例如:for(i=0;i10;i+)scanf( ”c,&str i ); /* 或 str i =getchar();*/str :i =0 ;/*工资加上串停止标记*/for(i=0;i10;i+)

39、printf( ”c ,str i );/* 或 putchar(str i );*/(2)字符串整体输入输出1在尺度输入输出函数printf 和 seanf 中运用s 格局描写符;输入情势:char str 6;seanf( ”S ,str);个中 str 为字符数组名,代表着 str 字符数组的肇端地址,输 入时体系主动在每个字符串后参加停止符0.若同时输入多个字符串,则以空格或回车符分隔.输入情势:printf( ”s ,str);输字符串时,遇第一个 0即停止.但可儿为掌握输出串所 占的域宽如:printf( “6$ ,str);/*若字符串中字符多于6 个,仍将全体输出*/print

40、f( “-6s ,str);/* 只输出前 6 个字符,过剩的不输出*/2运用 gets 和 puts 函数输入输出一行gets 函数用来从终端键盘读字符,直到遇换行符为止,换行符 不属字符串的内容.挪用情势:gets(str);str 为字符数组名或字符指针,字符串输入后,体系主动将 0置于串尾代调换行符.若输入串长超出数组界说长度时,体系 报错.Puts 函数用来把字符串的内容显示在屏幕上.挪用情势:puts(str);str 的寄义同上.输出时,碰到第一个 0停止并主动换行 字符串中可以含转义字符.第 11 章 对函数的进一步评论辩论考点 归纳11.1 传给 main 函数的参数在此之前

41、,我们在编写 main 函数时,厥后一对圆括号是空的,没参数.其实,在支撑 C 的情况中,可以在运行 C 程序时,经由过程 运行 C 程序的敕令行,把参数传送给 C 程序.11.2 经由过程实参向函数传递函数名或指向函数的指针变量在 C 说话中函数名代表该函数的进口地址,是以可以界说一种指向函数地址的指针变量.函数名或指向函数的指针变量可以作为实参传送给函数.这时,对应的形参是类型雷同的指针变量 .11.3 函数的递归挪用C 说话中的函数可以递归挪用,即:可以直接或间接地本身挪 用本身.前者称简略递归,后者称间接递归.第12章C说话顶用户标识符的感化域和存储类考点归纳12.1 局部变量和全局变

42、量在函数内部或复合语句内部界说的变量称为局部变量.函数的形参属于局部变量.在函数外部界说的变量称为全局变量 .有时,局 部变量也称为内部变量,全局变量也称为外部变量.12.2 变量的存储属性(主动.静态.存放器.外部),变量的感化域和 生计期C 说话中来解释变量存储属性的症结字有四个:auto(主动).static( 静态).register( 存放器).extern( 外部).局部变量可所以主动类别(用 auto,register 解释) ,也可所以 静态类别(用 static 解释).形参只能是主动存储类别,不许可是 static 类别.当局部变量未指明类别时,被主动解释成主动(auto)变量.这 类局部变量称为

温馨提示

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

评论

0/150

提交评论