国家计算机二级C语言考试复习知识点Word格式文档下载.docx

上传人:b****1 文档编号:3983910 上传时间:2023-05-02 格式:DOCX 页数:34 大小:50.77KB
下载 相关 举报
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第1页
第1页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第2页
第2页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第3页
第3页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第4页
第4页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第5页
第5页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第6页
第6页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第7页
第7页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第8页
第8页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第9页
第9页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第10页
第10页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第11页
第11页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第12页
第12页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第13页
第13页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第14页
第14页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第15页
第15页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第16页
第16页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第17页
第17页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第18页
第18页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第19页
第19页 / 共34页
国家计算机二级C语言考试复习知识点Word格式文档下载.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

国家计算机二级C语言考试复习知识点Word格式文档下载.docx

《国家计算机二级C语言考试复习知识点Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《国家计算机二级C语言考试复习知识点Word格式文档下载.docx(34页珍藏版)》请在冰点文库上搜索。

国家计算机二级C语言考试复习知识点Word格式文档下载.docx

即使是程序的最后一个语句也不例外。

分号是语句结束的标志。

(4).一行可以写多条语句,一条语句也可以分在多行上写,但是,不能将一个整体分开。

例如:

int是错误的,而int正确。

(5).C语言的注释必须放在“/*”和“*/”之间,“/”和“*”之间不允许有空格。

“/*”和“*/”之间不允许再插入“/*”或“*/”。

注释可以出现在程序中的任意位置。

注释部分不被执行。

(6).C语言程序书写格式自由,语句可以从任一列开始书写,一行内可以写多个语句。

但是过于“自由”的程序书写格式往往使人们很难读懂程序,初学者应该从一开始就养成好的习惯,是程序便于阅读。

2.标识符

(1)标识符只能由字母、数字和下划线组成。

(2)标识符的第一个字符必须是字母或下划线。

(3)标识符的大小写字母是有区别的,如abc和ABC是两个完全不同的标识符。

(3)标识符的分类:

关键字:

关键字是具有特定的含义的、专门用来说明C语言特定成分的一类标识符。

详细的查阅附录。

预定义标识符:

在C语言中它也有特定的含义。

预定义标识符可以用位“用户表标识符”使用,只是这将使这些标识符失去了原来的意义。

用户标识符:

由用户根据需要定义的标识符被成为用户标识符。

用户标示符用来给变量、函数、数组或者指针等命名。

3.C语言的数据类型

3.1数据可以分为常量和变量。

常量是指在程序执行中不变的量,常量

分为:

整型常数、实型常数、字符常量、字符串常量。

整型数据:

进制间的转换3.11.二、八、十六进制转为十进制规则:

“按权相加”3.12.十进制转为二、八、十六进制规则:

整数部分:

基数除取余,逆序排列小数部分:

基数乘取整,顺序排列3.13.二进制转为八、十六进制规则:

三(四)合一,按序相拼(整数部分,从右向左取,小数部分从左向右取,位数不足补零)。

3.14.八、十六进制转为二进制规则:

一分三(四),按序相拼

3.2整型数据在内存中的存放形式

1字节=8位,1Byte=8bit字长:

指CPU能同时处理的二进制位数。

由CPU的型号而定。

如:

16位微机的字长就是16位或2字节。

1GB=1024MB,1MB=1024KB,1KB=1024B:

是计算机中信息表示B:

表示字节,字节是表示存储容量的最小单位。

位(bit)

的最小单位。

3.21.正整数在内存中用“原码”形式存放。

(直接转换为二进制即可)。

如:

50000000000000101二字节能存放的最大数是:

327670111111111111111对带符号数,最高位是符号位,用0表示正,用1表示负。

3.22.负整数在内存中用“补码”形式存放。

取补码的步骤:

(1)忽略负号,求出原码。

(2)将原码按位取反(0、1互换)(3)在第二步的基础上加1。

取-5的补码。

(1)0000000000000101

(2)1111111111111010(3)1111111111111011将补码转换成相应的整数的步骤:

(1)将补码按位取反加1。

(2)将步骤1得到的二进制数转换成十进制数,然后加上负号即可。

1000000000000000按位取反加10111111111111111+11000000000000000转换成十进制:

215=32768加负号:

-32768几个特殊的带符号整数:

1000000000000000-327680111111111111111327671111111111111111-13.23.无符号整数:

只有正整数,没有负整数,最高位不表示符号位,每一位均参与转换。

二进制带符号整数无符号整数1111111111111111-1655351000000000000000-3276832768例2-12:

若有:

inta=-1;

unsignedb=65535;

则printf(“%d,%u,%d,%u”,a,a,b,b);

输出结果是:

-1,65535,-1,65535

数据益出问题:

例2-13:

若有inta=32767;

则a=a+1的结果是:

-32768例2-14:

若有unsignedb=65536;

则b的值是:

0分析:

32767:

01111111111111111+1100000000000000将100000000000000按照带符号数转为十进制为-3276865535:

1111111111111111+11111111111111111+11000000000000000065536unsignedb=655536;

而b属于无符号整型,在内存中只占两字节,所以只能包括16位。

标准C没有具体要求规定各类型数据所占内存的字节数,现以这次考试标准viusalc++6.0为例,说明各类型变量所占的位数。

类型shortintlong所占位所占字数163232节数2442unsignedintunsignedlongfloatdouble类型所占位所占字节数32323264数4448

unsignedshort16

3.3实型数据(浮点数)

3.31.实型常量

(1)小数形式:

由数字和小数点组成,必须有小数点,小数点的某一侧可以没有数字。

.23,123.876,123.

(2)指数形式:

用“e”或“E”后接一个整数,表示以10为底的幂数。

注意:

“e”或“E”之前之后必须有数字,且之后的数字必须是整数。

他们和前后的数字之间不能有空格。

例2-15:

下列合法的常量是()。

A.-32169B.0128C.0XDEFGD.13E0.5例2-16:

下列合法的实型常量是()。

(A)0Xff(B)124E(C)1.23E5.0(D)3.E2(E)1.25E+2(F).23e+02

3.32.实型变量单精度型float占4字节双精度型double占8字节长双精度longdouble占16字节(较少用)

4.表达式与运算符

4.1算术运算符及其表达式:

+-*/%%:

(求余运算)注意:

(1)%两边必须是整型数据。

12.0%3表达式是错误的。

(2)求余(%)的方法是:

忽略符号,求出余数,再将所得余数的符号定为与被除数相同。

17%3结果是:

217%-3结果是:

2,-17%3结果是:

-2,-17%-3结果是:

-2

4.2强制类型转换强制类型表达式:

(类型名)表达式注意:

类型名(表达式)这种形式是C++的强制类型表达方式。

5.赋值运算符及其表达式

5.1.赋值运算符=

格式:

变量名=表达式功能:

将表达式的值赋给左边的变量。

注:

(1)赋值运算符左边只能是一个变量,不能是常量,也不能是表达式。

a+b=34=3是非法的表达式a=6a+(b=3)都是合法的表达式a=b=20a=(b=10)/(c=2)都是合法的表达式

(2)实型数据赋给整型变量时,小数部分被舍去,整型数据赋给实型变量时,系统自动将整型数据转换为实型数据。

floata;

intb;

表达式a=10%3的值是1.0表达式b=a=10%3的值是1

5.2.复合赋值运算符及其表达式:

+=-=*=/=%=&

=|=^=>

>

=<

<

=

a+=3相当于a=a+3,a/=b+4相当a/=(b+4)或a=a/(b+4)例:

若a=12,则执行表达式a+=a-=a+a后a的值是多少?

分析:

a+=a-=(a+a)/*a的值是12*/

a+=a-=24a+=a=a-24a+=a=-12a+=-12a=a+(-12)a=-24

/*a的值是12*//*a的值是12*//*a的值是12*//*a的值是-12*//*a的值是-12*//*a的值是-24*/

5.3.自增、自减运算符及其表达式

++-注意:

(1)只能用于变量,不能用于常量和表达式。

6++(a+b)--都是错误的。

(2)当它们用于变量名前时,表达式的值为变量的值加一或减一。

当位于变量名后时,表达式的值为变量原来的值。

不论位于变量名前还是变量名后,只要进行了自增、自减运算,变量的值都会在原来的基础上加1或减1。

a=3则a++表达式的值是3运算之后变量的值是4a=3则++a表达式的值是4之后变量的值是4a=3则a--表达式的值是3之后变量的值是2a=3则--a表达式的值是2之后变量的值是2(3)口诀:

j=i++;

这个表达式是先引用后增值。

即:

先把i的初始值给变量j,然后i再自加1。

j=++i;

这歌表达式是先增值后引用。

i先自加1,然后再将我们自加后的值赋值给变量j。

但是记住它们是一起执行的,就是说:

例如j=i++先引用后增值实际上是一起执行的,它们之间不存在先后关系,我们只是位了好记才用到了上面的方法。

老师在上课的时候先不要说,但是你们必须知道。

j=i--,j=--i和上面j=i++,j=++i的方法是一样。

5.4逗号运算符及其表达式

1.格式:

表达式1,表达式2,…,表达式n注意:

1.逗号表达式的值是整个逗号表达式中最后一个表达式的值。

2.求值顺序是从左到右依次求解。

a=(3,b=1)的值是1运算结束后a的值是1,b的值是1。

四.相关试题

1.2008年4月相关试题(11)以下叙述中正确的是

A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句C)C程序书写格式自由,一个语句可以写在多行上D)用C语言编写的程序只能放在一个程序文件中(12)以下选项中不合法的标识符是A)printB)FORC)&

aD)_00(13)以下选项中不属于字符常量的是A)'

C'

B)"

C"

C)'

\xCC0'

D)'

\072'

(14)设变量已正确定义并赋值,以下正确的表达式是A)x=y*5=x+zB)int(15.8%5)C)x=y+z+5,++yD)x=25%5.0填空(7)设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为【7】。

2.2007年9月相关试题(11)C语言源程序名的后缀是A).exeB).CC).objD).cp(12)可在C程序中用作用户标识符的一组标识符是A)andB)DateC)HiD)case_2007y-m-dDr.TomBig1(13)以下选项中,合法的一组C语言数值常量是A)028B)12.C).177D)0x8A.5e-30Xa234e1.510,000-0xf4.5e00abc3.e5(14)以下叙述中正确的是A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以命名任意一个函数作为主函数(16)以下关于long、int和short类型数据占用内存大小的叙述中正确的是A)均占4个字节B)根据数据的大小来决定所占内存的字节数C)由用户自己定义D)由C语言编译系统决定(17)若变量均已正确定义并赋值,以下合法的C语言赋值语句是A)x=y==5;

B)x=n%2.5;

C)x+n=i;

D)x=5=4+1;

3.2007年4月相关考题(12)下列叙述中错误的是(D)A)计算机不能直接执行用C语言编写的源程序B)C程序经C编译程序编译后,生成后缀为.obj的文件是一个二进制文件C)后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件D)后缀为.obj和.exe的二进制文件都可以直接运行(13)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(B)A)大写字母B)连接符C)数字字符D)下划线

(14)以下叙述中错误的是(C)A)C语言是一种结构化程序设计语言B)结构化程序有顺序、分支、循环三种基本结构组成C)使用三种基本结构构成的程序只能解决简单问题D)结构化程序设计提倡模块化的设计方法(15)对于一个正常运行的C程序,以下叙述中正确的是(A)A)程序的执行总是从main函数开始,在main函数结束B)程序的执行总是从程序的第一个函数开始,在main函数结束C)程序的执行总是从main函数开始,在程序的最后一个函数中结束D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束(19)有以下程序,其中%u表示按无符号整数输出(B)main(){unsignedintx=0xFFFF;

/*x的初值为十六进制数*/printf(“%u\n”,x);

}/*注意:

x是占两个字节*/程序运行后的输出结果是A)-1B)65535C)32767D)0xFFFF

第二章顺序结构一.教学重点、难点

知识点C语句分类字符输出函数putchar()字符输入函数getchar()格式输入函数printf()格式输出函数scanf()所占分考核几率专家点评值0-11-21-23-43-430%70%70%100%100%简单识记难度适中,重点掌握难度适中,重点掌握难度适中,重点理解重点掌握难度适中,重点理解重点掌握

二.教学内容

1.语句

C语句共分为5类:

1.1控制语句1.2函数调用语句:

printf(“thisisacstatement”;

)1.3表达式语句每一个合法的表达式后加上分号(;

)就构成了表达式语句。

++a;

i+j;

语句和表达式的区别:

表达式有唯一确定的值,而语句没有值。

1.4赋值语句格式:

赋值表达式;

i=1,j=2是逗号表达式i=1;

j=2;

是两条赋值语句i++;

i--;

++i;

--i;

都是赋值语句等价于i=i+1;

或i=i-1;

1.5空语句:

只有一个单独的分号构成的语句。

就是一条空语句。

1.6复合语句:

用一对{}将若干语句括起来构成一条复合语句。

2.输入输出语句

在使用库函数时必须先用预编译命令#include<

头文件名>

或#include“头文件名”将相应的头文件包含到源程序中。

#include2.1.printf()函数格式:

printf(“格式控制”,输出列表);

功能:

按格式控制指定的格式输出数据。

格式控制包括以%开头的“格式说明符”和原样输出的普通字符。

printf(“a=%d,a+b=%d”,30,4+7);

a=30,a+b=11

(1)d格式%d:

按实际长度输出十进制整数。

%md:

输出占m列,若小于m列,左边补空格,若大于m列,按实际输出。

%-md:

输出占m列,若小于m列,右边补空格,若大于m列,按实际输出。

%ld:

输出长整型数据,输入输出长整型数据时必须用该格式。

printf(“%d,%6d,%-6d,%ld”,386,1234,3456,12345L);

输出结果:

386,1234,3456,12345printf(“%2d”,12345);

12345

(2)u格式

%u:

以无符号十进制形式输出整数。

printf(“%u”,-1);

65535ptintf(“%u”,-32768);

32768(3)o格式%o:

以无符号八进制形式输出整数,不输出前导符0。

printf(“%d,%o”,-1,-1);

-1,177777(4)x或X格式%x或%X以无符号十六进制形式输出整数。

不输出前导符0x或0X,小写对小写,大写对大写。

printf(“%d,%x,%X,%x”,-1,-1,0xabc,0XAbc);

-1,ffff,ABC,abc注:

若要输出十六进制和八进制的前导符,则要用%#o和%#x、%#X格式。

printf(“%#o,%#x,%#X”,-1,-1,0xaBc);

0177777,0xffff,0XABC(5)c格式%c用来输出一个字符,不输出单引号定界符。

%c和%d可以相互转换。

printf(“%c,%d”,’a’,’a’);

a,97printf(“%c,%d”,100,100);

d,100(6)s格式用来输出一个字符串,不输出双引号和字符串结束符。

%s:

输出字符串的有效字符。

printf(“%s”,”china\0yunnan”);

china%ms:

输出占m列,若小于m列,左边补空格,大于m列,按实际输出。

printf(“%5s,%-5s,%2s”,”swfc”,”swfc”,”swfc”);

swfc,swfc,swfc%m.ns:

输出占m列,只输出字符串的左n个字符到m列的右端。

printf(“%7.5s”,”yunnan”);

yunna(7)f格式:

按小数形式输出实型数据。

%f:

默认输出6位小数。

printf(“%f,%f”,543.12,5.4312e+2);

543.120000,543.120000%m.nf:

输出占m列,其中有n位小数。

若超过m列,确保n位小数后按实际输出。

注意四舍五入问题。

printf(“%7.3f,%-7.3f,%4.2f”,3.1415726,3.1415926,314.5926);

3.142,3.142,314.59(8)e格式以指数形式输出一个实数。

小数点前只有一位非零数,5位小数,3位指数。

printf(“%e,%e”,123.4,123.45e-7);

234000e+002,1.234500e-005(9)g格式自动在%f和%e中选择较短的一种输出,对于小数部分不输出无意义的0。

printf(“%g,%g”,123.45,123.45e-2);

123.45,1.2345

printf(“%g”,123000000.0);

23e+08小结:

(1)%%表示输出一个%。

printf(“%%d=%d”,10,10);

%d=10

(2)除了x,e,g大小写均可外,其它都只能小写。

printf(“%d=%D”,20,20);

20=%D(3)输出格式说明符所能操作的数据类型必须与输出项的类型一致。

printf(“%d”,1.234);

/*出错*/

2.2.scanf()函数

scanf(“格式控制”,地址列表);

(1)可指定数据所占的列数,输入后由系统自动截取相应的位数。

scanf(“%3d%2d”,&

a,&

b);

若输入:

3863018则:

a的值是:

386b的值是:

30若输入:

3863a的值是:

3scanf(“%3c%2d”,&

ch,&

c);

ch的值是:

’3’b的值是:

30

(2)%*md:

表示跳过m列不读。

scanf(“%*3d%3d%4d”,&

123456则:

456b的值是:

原来的值。

(3)不能在scanf()函数中指定输入数据的小数位数。

scanf(“%7.5f”,&

a);

/*出错*/在scanf()函数中,输入时普通字符原样输入。

scanf(“a=%d,b=%d”,&

若要给a赋值5,b赋值10,正确的输入是:

a=5,b=10scanf(“%d*,%d#,%d”,&

b,&

若要让a,b,c分别得到1,2,3,正确的输入是:

1*,2#,3<

回车>

若两个格式说明符之间没有其它字符,则在输入数据时,两数据之间要用回车或空格分隔,回车或空格可以是多个。

但是,%c格式除外。

scanf(“%d%d”,&

若想让a的值为5,b的值为10。

则正确的输入是:

5空格10<

或5<

10<

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2