ImageVerifierCode 换一换
格式:DOCX , 页数:84 ,大小:61.29KB ,
资源ID:9971905      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9971905.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(国家计算机二级C语言考试复习知识点.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

国家计算机二级C语言考试复习知识点.docx

1、国家计算机二级C语言考试复习知识点一、 教学讲点1. C语言的基本构成和格式#include “stdio.h”main() int a,b,sum;/* 定义变量*/ a=10; /*把整数10赋值给变量a*/ b=20; /*把整数20赋值给变量b*/ sum=a+b; /*把两数之和赋值给变量 sum*/ printf(“a=%d,b=%d,sum=%dn”,a,b,sum);/*输出计算结果*/(1).C程序由函数组成,一个程序必须且只能有一个主函数(main(),C程序总是从主函数开始执行,在主函数中结束。(2).定义函数时函数名后必须有一对小括号,函数体必须放在一对花括号内,在函数

2、体中,函数体有两个部分:定义部分和执行部分。定义语句必须出现在执行语句之前,我们先定义了a,b,sum,然后才给它们赋值。(3).C语言中每条语句都以分号“;”结束,分号时C语句的一部分。即使是程序的最后一个语句也不例外。分号是语句结束的标志。(4). 一行可以写多条语句,一条语句也可以分在多行上写,但是,不能将一个整体分开。 例如:i nt 是错误的,而int正确。(5). C语言的注释必须放在“/*”和“*/”之间,“/”和“*”之间不允许有空格。“/*”和“*/”之间不允许再插入“/*”或“*/”。注释可以出现在程序中的任意位置。注释部分不被执行。(6).C语言程序书写格式自由,语句可以

3、从任一列开始书写,一行内可以写多个语句。但是过于“自由”的程序书写格式往往使人们很难读懂程序,初学者应该从一开始就养成好的习惯,是程序便于阅读。2. 标识符(1) 标识符只能由字母、数字和下划线组成。(2) 标识符的第一个字符必须是字母或下划线。(3) 标识符的大小写字母是有区别的,如abc和ABC是两个完全不同的标识符。 (3) 标识符的分类:关键字:关键字是具有特定的含义的、专门用来说明C语言特定成分的一类标识符。预定义标识符:在C语言中它也有特定的含义。预定义标识符可以作为“用户标识符”使用,只是这将使这些标识符失去了原来的意义。用户标识符:由用户根据需要定义的标识符被成为用户标识符。用

4、户标示符用来给变量、函数、数组或者指针等命名。3. C语言的数据类型3.1数据可以分为常量和变量。常量是指在程序执行中不变的量,常量分为:整型常数、实型常数、字符常量、字符串常量。整型数据:进制间的转换3.11.二、八、十六进制转为十进制规则:“按权相加”3.12.十进制转为二、八、十六进制规则:整数部分:基数除取余,逆序排列小数部分:基数乘取整,顺序排列3.13.二进制转为八、十六进制规则:三(四)合一,按序相拼(整数部分,从右向左取,小数部分从左向右取,位数不足补零)。3.14.八、十六进制转为二进制规则:一分三(四),按序相拼3.2整型数据在内存中的存放形式1字节8位,1Byte8bit

5、字长:指CPU能同时处理的二进制位数。由CPU的型号而定。如:16位微机的字长就是16位或2字节。1GB=1024MB,1MB=1024KB,1KB=1024BB:表示字节,字节是表示存储容量的最小单位。位(bit):是计算机中信息表示的最小单位。3.21.正整数在内存中用“原码”形式存放。(直接转换为二进制即可)。如:5 0000000000000101二字节能存放的最大数是:327670111111111111111对带符号数,最高位是符号位,用0表示正,用1表示负。3.22.负整数在内存中用“补码”形式存放。取补码的步骤:(1)忽略负号,求出原码。(2)将原码按位取反(0 、1 互换)。

6、(3)在第二步的基础上加1。如:取-5的补码。(1)0000000000000101(2)1111111111111010(3)1111111111111011将补码转换成相应的整数的步骤:(1)将补码按位取反加1。(2)将步骤1得到的二进制数转换成十进制数,然后加上负号即可。例如:1000000000000000按位取反加10111111111111111 1 1000000000000000转换成十进制:121532768 加负号:-32768几个特殊的带符号整数:1000000000000000 -327680111111111111111 327671111111111111111 -

7、13.23.无符号整数:只有正整数,没有负整数,最高位不表示符号位,每一位均参与转换。二进制带符号整数无符号整数111111*1-1655351000000000000000-3276832768例2-12:若有:int a=-1; unsigned b=65535;则printf(“%d,%u,%d,%u”,a,a,b,b); 输出结果是:-1,65535,-1,65535数据益出问题:例2-13:若有int a=32767;则a=a+1的结果是:-32768例2-14:若有unsigned b=65536;则b的值是:0分析:32767:01111111111111111 +1100000

8、000000000将100000000000000按照带符号数转为十进制为-3276865535:111111*1+11111111111111111+11000000000000000065536unsigned b=655536;而b属于无符号整型,在内存中只占两字节,所以只能包括16位。标准C没有具体要求规定各类型数据所占内存的字节数, 现以这次考试标准viusalc+6.0为例,说明各类型变量所占的位数。 类型所占位数所占字节数类型所占位数所占字节数short162unsignedint324int324unsignedlong324long324float324unsignedsho

9、rt162double6483.3实型数据(浮点数)3.31.实型常量(1)小数形式:由数字和小数点组成,必须有小数点,小数点的某一侧可以没有数字。如:.23 ,123.876 ,123. (2)指数形式:用“e”或“E”后接一个整数,表示以10为底的幂数。注意: “e”或“E”之前之后必须有数字,且之后的数字必须是整数。他们和前后的数字之间不能有空格。例如:例2-15:下列合法的常量是( )。A.-32169 B.0128 C.0XDEFG D.13E0.5例2-16:下列合法的实型常量是()。(A) 0Xff (B)124E (C) 1.23E5.0 (D) 3.E2 (E) 1.25E+

10、2 (F).23e+02 3.32.实型变量单精度型 float 占 4 字节双精度型 double 占 8 字节长双精度 long double 占 16字节(较少用)4. 表达式与运算符4.1算术运算符及其表达式:+ - * / %:(求余运算)注意:(1)%两边必须是整型数据。12.0%3 表达式是错误的。(2)求余(%)的方法是:忽略符号,求出余数,再将所得余数的符号定为与被除数相同。 例如:17%3 结果是:217%-3 结果是:2,-17%3 结果是:-2,-17%-3 结果是:-24.2强制类型转换强制类型表达式:(类型名)表达式注意:类型名(表达式)这种形式是C+的强制类型表达

11、方式。5.赋值运算符及其表达式5.1.赋值运算符 = 格式:变量名=表达式功能:将表达式的值赋给左边的变量。注:(1)赋值运算符左边只能是一个变量,不能是常量,也不能是表达式。a+b=3 4=3 是非法的表达式a=6 a+(b=3) 都是合法的表达式a=b=20 a=(b=10)/(c=2) 都是合法的表达式(2)实型数据赋给整型变量时,小数部分被舍去,整型数据赋给实型变量时,系统自动将整型数据转换为实型数据。例如:float a; int b;表达式a=10%3 的值是1.0表达式b=a=10%3的值是15.2.复合赋值运算符及其表达式:+= -= *= /= %= &= |= = = =例

12、如: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-=24 /*a的值是12*/a+=a=a-24 /*a的值是12*/a+=a=-12 /*a的值是12*/a+=-12 /*a的值是-12*/a=a+(-12) /*a的值是-12*/a=-24 /*a的值是-24*/5.3.自增、自减运算符及其表达式+ - 注意:(1)只能用于变量,不能用于常量和表达式。如:6+ (a+b)- 都是错误的。(2)当它们用于变量名前时,表达式的值为变量的

13、值加一或减一。当位于变量名后时,表达式的值为变量原来的值。不论位于变量名前还是变量名后,只要进行了自增、自减运算,变量的值都会在原来的基础上加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

14、+先引用后增值实际上是一起执行的,它们之间不存在先后关系,我们只是位了好记才用到了上面的方法。老师在上课的时候先不要说,但是你们必须知道。j=i-,j=-i和上面j=i+,j=+i的方法是一样。5.4逗号运算符及其表达式1.格式:表达式1,表达式2,表达式n注意:1.逗号表达式的值是整个逗号表达式中最后一个表达式的值。2.求值顺序是从左到右依次求解。例如:a(3,b1)的值是1 运算结束后a的值是1, b的值是 1。 二 相关试题 1.2008年4月相关试题(11)以下叙述中正确的是 A)C程序中的注释只能出现在程序的开始位置和语句的后面 B)C程序书写格式严格,要求一行内只能写一个语句 C)

15、C程序书写格式自由,一个语句可以写在多行上 D)用C语言编写的程序只能放在一个程序文件中 (12)以下选项中不合法的标识符是 A)print B)FOR C)&a D)_00 (13)以下选项中不属于字符常量的是 A) C B) C C)xCC0 D) 072 (14)设变量已正确定义并赋值,以下正确的表达式是 A)x=y*5=x+z B)int(15.8%5) C)x=y+z+5,+y D)x=25%5.0 填空(7)设变量已正确定义为整型,则表达式n=i=2,+i,i+的值为【7】。 2.2007年9月相关试题(11)C语言源程序名的后缀是 A).exe B).C C).obj D).cp

16、(12)可在C程序中用作用户标识符的一组标识符是 A) and B) Date C) Hi D) case _2007 y-m-d Dr.Tom Big1(13)以下选项中,合法的一组C语言数值常量是 A) 028 B) 12. C) .177 D) 0x8A .5e-3 0Xa23 4e1.5 10,000 -0xf 4.5e0 0abc 3.e5(14)以下叙述中正确的是 A)C语言程序将从源程序中第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束 D)main可作为用户标识符,用

17、以命名任意一个函数作为主函数(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的文件是一个二进制文

18、件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函数开始,在

19、程序的最后一个函数中结束D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束 (19)有以下程序,其中%u表示按无符号整数输出(B )main()unsigned int x=0xFFFF; /* x的初值为十六进制数 */ printf(“%un”,x);/*注意:x是占两个字节*/程序运行后的输出结果是A)-1 B)65535 C)32767 D)0xFFFF 第二章 顺序结构一教学重点、难点知识点所占分值考核几率专家点评C语句分类0-130%简单识记字符输出函数putchar()1-270%难度适中,重点掌握字符输入函数getchar()1-270%难度适中,重点掌握格式

20、输入函数printf()3-4100%难度适中,重点理解重点掌握格式输出函数scanf()3-4100%难度适中,重点理解重点掌握二教学内容1.语句 C语句共分为5类:1.1控制语句1.2函数调用语句:printf(“this is a c statement”);1.3表达式语句每一个合法的表达式后加上分号(;)就构成了表达式语句。+a;i+j;语句和表达式的区别:表达式有唯一确定的值,而语句没有值。1.4赋值语句格式:赋值表达式;i=1,j2是逗号表达式i=1; j2;是两条赋值语句i+; i-;+i;-i;都是赋值语句等价于ii+1;或i=i-1;1.5空语句:只有一个单独的分号构成的语

21、句。如: ;就是一条空语句。1.6复合语句:用一对将若干语句括起来构成一条复合语句。2.输入输出语句在使用库函数时必须先用预编译命令#include 或 #include“头文件名”将相应的头文件包含到源程序中。如:#include 2.1.printf()函数格式:printf(“格式控制”,输出列表);功能:按格式控制指定的格式输出数据。注意:格式控制包括以开头的“格式说明符”和原样输出的普通字符。如:printf(“ad,a+bd”,30,4+7);输出结果是:a30,a+b11(1)d格式d:按实际长度输出十进制整数。md:输出占m列,若小于m列,左边补空格,若大于m列,按实际输出。-

22、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(

23、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格式用来输出一个字符串,不输出双引

24、号和字符串结束符。s:输出字符串的有效字符。printf(“%s”,”china0yunnan”); 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%

25、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);12

26、3.45,1.2345printf(“%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

27、则:a的值是:386b的值是:30若输入:3863 a的值是:386b的值是:3scanf(“%3c%2d”,&ch,&c);若输入:3863018则: ch的值是:3b的值是:30(2)*md:表示跳过m列不读。如:scanf(“%*3d%3d%4d”,&a,&b);若输入:123456则:a的值是:456b的值是:原来的值。(3)不能在scanf()函数中指定输入数据的小数位数。如:scanf(“%7.5f”,&a);/*出错*/在scanf()函数中,输入时普通字符原样输入。如:scanf(“a=%d,b=%d”,&a,&b);若要给a赋值5,b赋值10,正确的输入是:a5,b10scanf(“%d*,%d#,%d”,&a,&b,&c);若要让a,b,c分别得到1,2,3,正确的输入是:1*,2#,3若两个格式说明符之间没有其它字符,则在输入数据时,两数据之间要用回车或空格分隔,回车或空格可以是多个。但是,c格式除外。如:scanf(“%d%d”,&a,&b);若想让a的值为5,b的值为10。则正确的输入是:5 空格10 或 5 10或5空格 空格 空格10(6)多个%c格式之间没有其它字符,仍然不能用回车或空格来分隔。如:scanf(“%c%c%c”,&a,&b,&c);若输入:a空格b空格

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1