二级C语言辅导班笔试资料

合集下载

计算机二级c语言专用题库(辅导班内部资料,超值!)

计算机二级c语言专用题库(辅导班内部资料,超值!)

第一章 C语言基础知识一、选择题:1.下列关于C语言用户标识符的叙述中正确的是()A)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头2.①下列选项中,不能用作标识符的是()A)_1234_ B)_1_2 C)int_2_ D)2_int_②以下选项中合法的用户标识符是()A)long B)_2Test C)3Dmax D)A.dat③以下不能定义为用户标识符的是()A)scanf B)Void C)_3com_ D)int3.可用作C语言用户标识符的一组标识符()A)void define WORD B)a3_b3 _123 IF C)For -abc CaseD)2a DO sigeof E)f2_G3 IF abc4.以下4组用户定义标识符中,全部合法的一组是()A)_main B)If C)txt D)intenclude -max REAL k_2sin turbo 3COM _0015.以下叙述正确的是()A)可以把define和if定义为用户标识符B)可以把define定义为用户标识符,但不能把if定义为用户标识符C)可以把if定义为用户标识符,但不能把define定义为用户标识符D)define和if都不能定义为用户标识符6.如果下面的变量都是int类型,则输出结果是()main(){ int sum=pad=5;pAd=sum++,pAd++,++pAd;printf(“%d\n”,pad);} A)7 B)6 C)5 D)47.C语言中最简单的数据类型包括()A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型8.以下选项中属于C语言的数据类型的是()A)复数型B)逻辑型C)双精度型D)集合型9.下列叙述中正确的是()A)C语言中既有逻辑类型也有集合类型 B)C语言中没有逻辑类型但有集合类型C)C语言中有逻辑类型但没有集合类型 D)C语言中既没有逻辑类型也没有集合类型10.C语言提供的合法的数据类型关键字是()()()①A)Double B)short C)integer D)Char②A)swicth B)cher C)Case D)default③A)VAR B)cher C)integer D)default11.以下选项中不属于C语言类型的是()A)signed short int B)unsigned long int C)unsigned int D)long short12.若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为()A)float B)int C)char D)double13.sizeof(double)是()A)一种函数调用 B)一个双精度型表达式 C)一个整型表达式 D)一个不合法的表达式14.①在C语言中,不合法的整型常数是()A)32768 B)0 C)037 D)0xAF②以下选项中可作为C语言合法整数的是()A)10110B B)0386 C)0Xffa D)x2a215.在C语言中,合法的长整型常数是()A)0L B)4962710 C)0.054838743 D)2.1869e10 E)324562& F)216D16.在C语言中,合法的实型常数是()()①A)5E2.0 B)E-3 C).2E0 D)1.3E②A)1.2E0.5 B)3.14159E C).5E-3 D)E1517.16位C编译系统中,若定义long a;能给a赋40000的正确语句()A)a=20000+20000; B)a=4000*10; C)a=30000+10000; D)a=4000L*10L;18.下列变量定义中合法的是()A)short _a=1-.1e-1;B)double b=1+5e2.5;C)long do=0xfdal;D)float 2_and=1-e-3;19.C语言中,运算对象必须是整型数的运算符是()()()①A)% B)/ C)< D)!②A)% B)\ C)%和\ D)**③A)%= B)/ C)= D)<=20.设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是()A)6.500000 B)6 C)5.500000 D)6.00000021.下列关于单目运算符++、--的叙述中正确的是()A)它们的运算对象可以是任何变量和常量B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量D)它们的运算对象可以是char型变量、int型变量和float型变量22.以下程序的输出结果是()()()()()①main(){ int i=10,j=1;printf(“%d,%d\n”,i--,++j);}②main(){ int x=10,y=10;printf(“%d %d\n”,x--,--y);}③main(){ int a=12,b=12;printf(“%d%d\n”,--a,++b);}④main(){ int i=010,j=10;printf(“%d,%d\n”,++i,j--);}⑤main(){ int x=023;printf(“%d\n”,--x);}①A)9,2 B)10,2 C)9,1 D)10,1②A)10 10 B)9 9 C)9 10 D)10 9③A)10 10 B)12 12 C)11 10 D)11 13④A)11,10 B)9,10 C)010,9 D)10,9⑤A)17 B)18 C)23 D)2423.设有int x=11;则表达式(x++*1/3)的值是()A)3 B)4 C)11 D)1224.设有以下定义,则下面语句中错误的是()int a=0;double b=1.25;char c=‘A’;#define d 2A)a++;B)b++;C)c++;D)d++;25.有以下程序,程序运行后的输出结果是()main(){int m=3,n=4,x;x=-m++;x=x+8/++n;printf(“%d\n”,x);}A)3 B)5 C)-1 D)-226.以下选项中,与k=n++完全等价的表达式是()A)k=n,n=n+1 B)n=n+1,k=n C)k=++n D)k+=n+127.以下程序的输出结果是()main(){ int x=10,y=3;printf(“%d\n”,y=x/y);}A)0 B)1 C)3 D)不确定的值28.若有以下程序段,执行后c3中的值是()int c1=1,c2=2,c3;c3=1.0/c2*c1;A)0 B)0.5 C)1 D)229.若有定义:int a=8,b=5,c;执行语句c=a/b+0.4;后,c的值为()A)1.4 B)1 C)2.0 D)230.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(),则表达式x=2,y=x+3/2的值是()A)1 B)2 C)2.0 D)2.5 E)3.5 F)3 G)3.0 31.以下程序的输出结果是()main(){double d=3.2;int x,y;x=1.2;y=(x+3.8)/5.0;printf(“%d\n”,d*y);}A)3 B)3.2 C)0 D)3.0732.①设有语句:int a=3;则执行了语句a+=a-=a*a;后,变量a的值是()②设有语句:int a=12;则执行了语句a+=a-=a*a;后,变量a的值是()③设有语句:int x=10;则执行了语句x+=x-=x-x;后,变量x的值是()④设有语句:int a=5;则执行了语句a*=a/=a++;后,变量a的值是()①A)3 B)0 C)9 D)-12②A)552 B)264 C)144 D)-264③A)10 B)20 C)40 D)30④A)2 B)1 C)40 D)333.以下程序的输出结果是()main(){int k=2,i=2,m;m=(k+=i*=k);printf(“%d,%d\n”,m,i);A)8,6 B)8,3 C)6,4 D)7,434.假定有以下变量定义:int k=7,x=12;则能使值为3的表达式是()A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)35.设x和y均为int型,则以下语句:x+=y;y=x-y;x-=y;的功能()A)把x和y按从大到小排列B)把x和y按从小到大排列C)无确定结果D)交换x和y中的值36.设有如下程序段, 则以下叙述中正确的是()main(){ int x=2002,y=2003;printf(“%d\n”,(x,y));}A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出B)运行时产生出错信息C)输出值为2002D)输出值为200337.设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为()A)4 B)16 C)32 D)5238.执行下面程序中的输出语句后,a的值是()main(){ int a;printf(“%d\n”,(a=3*5,a*4,a+5));}A)65 B)20 C)15 D)1039.给出以下程序Ⅰ和Ⅱ,判断它们的输出()Ⅰ main()Ⅱ main(){int a=4,b=7; {int a=1,b=2;printf(“%d\n”,(a=a+1,b+a,b+1));} printf(“%d\n”,a=a+1,a+b,b+1);} A)Ⅰ输出5 B)Ⅰ输出5Ⅱ输出2 Ⅱ中printf函数调用语句的输出项包含了a=a+1形式,不合法C)Ⅰ输出8 D)Ⅰ中printf函数调用语句的格式描述符不够,输出无定值Ⅱ输出2 Ⅱ输出240.若有以下程序段,其输出结果是()int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%d\n”,a,b,c);A)3,0,-10 B)0,0,5 C)-10,3,-10 D)3,0,341.⑴设有如下的变量定义,则以下符合C语言语法的表达式是()int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2;A)x%(-3) B)a=a*3=2 C)y=float(i) D)a+=a-=(b=4)*(a=3)⑵以下定义语句,若各变量已正确赋值,下列选项中正确的表达式()double a,b;int w;long c;A)a=a+b=b++ B)w%((int)a+b) C)(c+w)%(int)a D)w=a==b;⑶若变量已正确定义并赋值,下面符合C语言语法的表达式是()A)a:=b+1 B)a=b=c+2 C)int 18.5%3 D)a=a+7=c+b E)a=7+b+c,a++ F)a=a+7;⑷以下选项中非法的表达式是()A)0<=x<100 B)i=j==0 C)(char)(65+3) D)x+1=x+1⑸①若变量a、i已正确定义,且i已正确赋值,则合法的语句是()A)a==1 B)++i;C)a=a++=5;D)a=int(i);②若以下选项中的变量已正确定义,则正确的赋值语句是()A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;⑹请选出合法的C语言赋值语句()()()①A)a=b=58 B)i++;C)a=58,b=58 D)k=int(a+b); E)x+y;②A)x=3,y=5 B)a=b=6 C)i--;D)y=int(x);③A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=7+b,c=a+7;D)a=7+b,b++,a+7⑺下列选项中不正确的赋值语句是()()①A)++t;B)k=i==j;C)a=b+c=1;D)n1=(n2=(n3=0));②A)j++;B)++(i+1);C)x=j>0;D)n=(i=2,++i);42.⑴设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是()A)x=x*100+0.5/100.0;B)x=(x*100+0.5)/100.0;C)x=(int)(x*100+0.5)/100.0;D)x=(x/100+0.5)*100.0;E)x=(x*100+0.5)/100.0,x=(int)(x*100)/100.0;⑵若变量a已说明为float类型,i为int类型,则不能实现将a中的数值保留小数点后两位,第三位进行四舍五入运算的语句是()A)a=(a*100+0.5)/100.0,a=(int)(a*100)/100.0; B)i=a*100+0.5,a=i/100.0;C)a=(int)(a*100+0.5)/100.0;D)a=(a/100+0.5)*100.0;43.C语言程序的基本单位是()A)程序行B)语句C)函数D)字符44.在一个C程序中()A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后 D)main函数必须出现在固定位置45.以下说法中正确的是()A)C语言程序总是从第一个函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分1 46.假设在程序中a、b、c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式abc的表达式是()A)1/a*b*c B)1/(a*b*c) C)1.0/a/b/c D)1/a/b(float)c47.一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是()A)有零个或多个输入B)有穷性C)有零个或多个输出D)可行性48.C语言中用于结构化程序设计的三种基本结构是()A)顺序结构、选择结构、循环结构 B)if、switch、breakC)for、while、do-while D)if、for、continue49.结构化程序由三种基本结构组成,三种基本结构组成的算法()A)可以完成任何复杂的任务B)只能完成部分复杂的任务C)只能完成符合结构化的任务D)只能完成一些简单的任务50.以下叙述中正确的是()A)C程序中注释部分可以出现在程序中任意合适的地方B)花括号“{”和“}”只能作为函数体的定界符B)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分51.⑴语句int i=3;则k=(i++)+(i++)+(i++);执行过后k的值为()i的值为()A)9,6 B)12,5 C)18,6 D)15,5⑵如果int i=3;则k=(i++)+(++i)+(i++);执行过后k的值为()i的值为()A)12,6 B)12,5 C)18,6 D)15,5⑶如果int i=3;则k=(++i)+(++i)+(i++);执行过后k的值为()i的值为()A)15,6 B)12,5 C)18,6 D)15,5⑷如果int i=3;则k=(++i)+(++i)+(++i);执行过后k的值为()i的值为()A)9,6 B)12,5 C)18,6 D)15,5二、填空题:1.C语言源程序文件的后缀是___,经过编译后,生成文件的后缀是_____,经过连接后,生成文件的后缀是_____。

精编江苏省计算机等级考试二级C语言笔试辅导题目资料

精编江苏省计算机等级考试二级C语言笔试辅导题目资料
江苏省计算机等级考试 二级C语言 笔试辅导
1
笔试概况
• 考试时间:2小时 • 合格、优秀成绩要求 • 内容题型及分值
– 信息技术 选择题(20分)
– C语言 选择题(10分) 填空题(30分):简单填空(5分) 阅读程序(13分) 完善程序(12分)
• 答题策略
2
语法考试要求及考题解析
(2007秋~2010春)
答案: byye101A
9
[学校单选题] 表达式“1e-8/2+1.0f”值的数据类型是 (3) 。
A. int
B. long C. float
D. double
答案:D
[学校单选题]以下局部变量声明中正确的是 (2) 。
A. int char=2; B. void a=0;
C. int a=b=0; D. int a, b=a=0;

A. 0,2 答案:A
B. 0,1
C. 1,1
18
D. 2,2
2. 语句
⑴ 实现顺序结构的语句
① 表达式语句,空语句,复合语句,函数调用语句
② 标准输入输出库函数printf(), scanf(),getchar() , putchar() ,gets(),puts()
【考题解析】
[单选题] 已知int类型数据在内存中存储长度为2个字节,以下
B. s=x<0?-1:(x>0?1:0)
C. s=x<=0?-1:(x==0?0:1)
D. s=x>0?1:x==0?0:-1
答案: C
[单选题] 若有程序段“char c=256; int a=c;”,则执行该程 序段后a的值是 。
A. 256

全国计算机二级C语言(完整复习资料)

全国计算机二级C语言(完整复习资料)

电脑二级C复习资料公共基础知识资料第一章数据结构与算法【考点1】算法的基本概念算法:是指一组有穷的指令集,是解题方案的准确而完整的描述。

算法不等于程序,也不等于计算方法。

算法的基本特征:确定性,算法中每一步骤都必须有明确定义,不允许有多义性;有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止;可行性,算法原则上能够精确地执行;拥有足够的情报。

算法的组成要素:一个算法由数据对象的运算和操作以及其控制结构这两部分组成。

算法的基本运算和操作:算术运算,逻辑运算,关系运算,数据传输。

算法的基本控制结构:顺序,选择,循环。

算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术。

【考点2】算法的复杂度算法效率的度量——算法的复杂度:时间复杂度和空间复杂度。

算法时间复杂度:指执行算法所需要的计算工作量。

通常,一个算法所用的时间包括编译时间和运行时间。

算法空间复杂度:指执行这个算法所需要的内存空间。

包括算法程序所占的空间,输入的初始数据所占的空间,算法执行过程中所需的额外空间。

空间复杂度和时间复杂度并不相关。

【考点3】数据结构的基本概念数据:数据是客观事物的符号表示,是能输入到电脑中并被计算程序识别和处理的符号的总称,如文档,声音,视频等。

数据元素:数据元素是数据的基本单位。

数据对象:数据对象是性质相同的数据元素的集合。

数据结构:是指由某一数据对象中所有数据成员之间的关系组成的集合。

【考点4】逻辑结构和存储结构数据结构可分为数据的逻辑结构和存储结构。

数据的逻辑结构是对数据元素之间的逻辑关系的描述,与数据的存储无关,是面向问题的,是独立于电脑的。

它包括数据对象和数据对象之间的关系。

数据的存储结构也称为数据的物理结构,是数据在电脑中的存放的方式,是面向电脑的,它包括数据元素的存储方式和关系的存储方式。

数据结构和逻辑结构的关系:一种数据的逻辑结构可以表示成多种存储结构即数据的逻辑结构和存储结构不一定一一对应。

计算机二级c语言笔试题库及答案

计算机二级c语言笔试题库及答案

计算机二级c语言笔试题库及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个函数用于将字符串s2连接到字符串s1的末尾?A. strcat(s1, s2)B. strcpy(s1, s2)C. strncpy(s1, s2, n)D. strcmp(s1, s2)答案:A3. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B4. 若有以下定义:int a[5] = {1, 2, 3, 4, 5}; 则表达式a[0] +a[2] + a[4]的值是多少?A. 8B. 10C. 12D. 15答案:C5. 在C语言中,以下哪个函数用于将一个字符串复制到另一个字符串?A. strcat()B. strcpy()C. strncpy()D. strcmp()答案:B6. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:A7. 在C语言中,以下哪个关键字用于声明一个变量?A. varB. letC. intD. var答案:C8. 在C语言中,以下哪个函数用于将一个整数转换为字符串?A. atoi()B. itoa()C. sprintf()D. strcpy()答案:B9. 在C语言中,以下哪个函数用于打开一个文件?A. fopen()B. fclose()C. fread()D. fwrite()答案:A10. 在C语言中,以下哪个关键字用于定义一个指针?A. pointerB. ptrC. *D. ref答案:C二、填空题(每题2分,共20分)1. 在C语言中,________关键字用于定义一个宏。

答案:#define2. 在C语言中,________关键字用于定义一个枚举类型。

培训班C语言笔记(全国计算机等级考试二级C语言)

培训班C语言笔记(全国计算机等级考试二级C语言)

培训班C语言笔记(全国计算机等级考试二级C语言)第一章:C语言简介目标:1、程序2、算法(流程图)3、C语言一、指令组成程序,由程序组成软件程序员责任:教电脑解决问题思路客户(用户):用软件解决问题二、算法:为解决某个问题而采用一系列的合乎逻辑,简洁的步骤流程图:以图形的形式描述算法顺序结构:输入--->处理---->输出(材料) (加工)(产品)分支(选择)结构:带判断框(假设,如果,符合)循环结构:数据会回流(箭头会向上走)C源程序的后缀:.cpp 或.c1、#include 包含<> 安装目录stdio.h 标准输入出的头文件,支持程序printf()和scanf()2、void 空,表无返回值3、main() 主函数,程序的入口4、区分大小写5、每一行都要加分号6、注释// 注释一行/* */ 注释多行第二章目标:1、变量和常量2、数据类型3、输入和输出一、变量:内存中存放数据的空间,每块空间都有名字(变量名) 注:变量必须先声明(申请空间)并初始化后再使用1、声明:a. 类型变量名;类型:char,int,float,double例:int num; char c;b. 类型变量名=值;初始化:在声明时直接赋值例:int a=10; (申请a空间,直接放10进去)c. 类型变量名1,变量名2;2、命名规范可以包含字母,数字,下划线;但必须以字母和下划线开头正确:a num a12 _12 _a错误:2 2a 23_a a*b a? intint 10; (错,错,错)3、使用int a;a=10; (变量赋值)a=3; a=20; (20会将3覆盖,只认最后一个值)a=a+1; (先计算右边,再赋值)a=3 , b=10 (交换),必须借助第三方变量int c;(空杯子)交换顺序: c=a; a=b ; b=c二、常量:仅代表自己,无特殊含义字符常量:单个字符,带单引号, 'a'字符串常量:一串字符,带双引号, "abc"数字常量:10 10.5符号常量:例:变量:a10 ,a,abc常量:10,10.2,'a',"abc"非法: 10a ,'abc'三、数据类型:对数据分类,避免二义性类型存放数据长度char 字母,符号和不参与计算的数字 1int 整数2/4float 整数和小数 4double 整数和小数8注:a.float性能比doubledouble存放的数据比float大,一般用floatb.能用小类型,绝不用大类型四、printf()输出1、printf("hello world");双引号中内容原样输出2、printf("hello\n");\n 换行\t 制表位,相当于八个空格\\ 表一个\\' 表一个'\" 表一个"统称为转义字符,必须放在双引号里面3、占位符:变量输出时要放在双引号后面,用,号隔开. 在双引号内用占位符占位%c 为char占位%d int%f float%lf doubleint a=10,b=20;printf("a=%d,b=%d",a,b);// 输出: a=10,b=20五、scanf()与printf()用法一样注:a.变量前面必须带地址符&b.提示printf("入职年份:");scanf("%d",&rz);错误:scanf("入职年份:%d",&rz);c.scanf("%d%d",&rz,&jn); 输入两个数字,用空格或回车scanf("%d,%d",&rz,&jn);输入两个数字,用逗号隔开补充:一、符号常量:用符号代表某个数据,该符号不能再代表别的数据(从一而终)语法:#define 常量名值注:a.不加分号b.常量名习惯大写c.写在#include之后d.与变量区别,不能改变,只赋一次值char:字符型char b='h'; //声明一个名为b的空间,存放'h'字母‘A’的ASCII码为65'B' 66'a' 97是大写加32char ch='A';printf("%d",ch); //65printf("%c",ch); //A三、double输出时可以%lf或%f占位输入时只能用%lf占位小数在电脑中不是精确保存四、修饰符:插在%d,%f,%lf的%和字母之间例:%修饰符d%-010.2f10:宽度0: 左边空白部分用0填充,默认用空格-: 左对齐,默认右对齐.2 :保留两位小数,默认六位注:一般scanf中不用修饰符和\n五、算术运算符+ - * / % ++ --/: 整数除整数,结果为整数%: 取余(求模),只用int25%7=45%7=51234/100%10 取百位1234/10%10 取十位++自增--自减int a=3;a. a++; 相当于a=a+1;(增加1) 前自增++a; 同上后自增注:单独使用无区别b. int a=3,c;c=++a; c=a++;先自增再赋值先赋值再自增步骤:++a; c=a;c=a; a++;结果: a=4 c=4 a=4 c=3六、putchar() ,getchar() ,fflush(stdin);putchar()输出一个字符,只用char型例:char ch='A';putchar(ch); 相当于printf("%c",ch);int ch=65;putchar(ch); //Agetchar()输入一个字符,只用char例:char ch;ch=getchar(); 相当scanf("%c",&ch);习惯在scanf("%c",&ch);和getchar();之前加fflush(stdin); //清空缓冲区,删除不要的字符和回车七、强制类型转换int a=10.5%4; //错误,float不能取余int a=(int)10.5%4; 将10.5转成int,即10float a=5/2; //2.000000float a=(float)5/2; //将5转成5.00000,结果2.5 第三章目标:1、运算符2、优先级3、if一、表达式:由操作数和运算符组成操作数:由变量、常量和函数组成二、运算符1、算术2、赋值= += -= *= /= %=a =b=3; (将右值给左值)b=3+5;(先计算再赋值)x+y=z; (错误,左边只能一个变量)b +=int a=3;a+=2; //在原值上增加2,相当于a=a+2;a+=1 , a++,++a, a=a+1 效果一样c.%= : a%=10; 相当a=a%10; 只用于int型3、关系运算符> , >= ,< ,<===(等于) ,!=(不等于)1) >= 大于或者等于2) != 不能用<>3) == :判断是否相等(if)=:赋值,==判断.a==3 判断a是否等于3a=3 将3赋值给a4) 关系运算符的结果只有真或假,1表真,0表假5) 4>3>2结果为0,先算4>3得1,再算1>2,得04、逻辑运算符! :非,真变假,假变真&&:与,两个条件都成立,结果才为真(如果左边表达式为假,则右边表达式不再计算)||:或,一个条件成立,结果就为真(如果左边表达式为真,则右边表达式不再计算)1)优先级:非、与、或2)运算结果只有真1和假0运算过程中非0表真,0表假三、优先级1、括号()2、算术运算符++ -- !* / %+ -3、关系运算符> >= < <=== !=4、逻辑&&||5、赋值= += -= *= /=注:!属于一元运算符与++,--同级四、if语句if(条件) //不加分号,条件放在()中{ 符合条件执行语句;}else //不加分号,不加条件{不符合条件执行语句;}第四章多重选择1、嵌套ifa. if(条件1){语句1; //符合条件1}else{if(条件2){语句2; //不符合1,符合2}else{语句3; //不符合1,2}}b. if(条件1){if(条件2){语句1;//符合1,2}else{语句2; //符合1,不符合2}}else{语句3; //不符合1}例:以下两列语句的跳转:当x=13时:1if(x<=10)2{语句块1} 3else if(x<=20) 4{语句块2} 5else if(x<=40) 6{语句块3} 7else8{语句块4} if(x<=10){ 语句块1}if(x>10&&x<=20) {语句块2}if(x>20&&x<=40) {语句块3}else{语句块4}左边:1->3->4->跳到8后面右边:1->3->4->5->7->跳到8后面二、多重ifif(条件1){语句1;// 符合1}else if(条件2){语句2; //不符合1,符合2}else if(条件3){语句3; //不符合1,2;符合3}...else{语句n; //全部不符合}注:用于else后面带if三、switch注:1、判断同一个变量2、只能用相等情况switch(表达式) //a.可用变量,不加分号{ //b.不可省case 值1: //c.值必须为常量(数字或单引号的字母)//不能用<,>和变量。

二级C语言程序设计笔试资料

二级C语言程序设计笔试资料

C语言程序设计笔试辅导资料考试内容:一、C语言的结构1.程序的构成,main函数和其他函数。

2.头文件,数据说明,函数的开始和结束标志。

3. C语言的风格。

二、数据类型及其运算(基础)1.C的数据类型(基本类型,构造类型,指针类型,空类型)及其定义方法。

2.C运算符的种类、运算优先级和结合性。

3.不同类型数据间的转换与运算。

4.C表达式类型(赋值表达式、算术表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式)和求值规则。

三、基本语句(基础)1.表达式语句,空语句,复合语句。

2.数据的输入和输出,输入输出函数的调用。

3.复合语句。

4.GOTO语句和语句标号的使用。

(这个了解即可)四、选择结构程序设计1.用if语句实现选择结构。

(基础)2.用switch语句实现多分支选择结构。

(笔试有)3.选择结构的嵌套。

五、循环结构程序设计(基础)1.for 循环结构。

2.while和do while循环结构。

3.continue语句和break语句。

4.循环的嵌套。

(基础)六、数组的定义和引用1.一维数组和多维数组的定义、初始化和引用。

2.字符串与字符数组。

七、函数(基础)1.库函数的正确调用。

2.函数的定义方法。

3.函数的类型和返回值。

4.形式参数与实在参数,参数值的传递。

5.函数的正确调用,嵌套调用,递归调用。

6.局部变量和全局变量。

7.变量的存储类别(自动、静态、寄存器、外部),变量的作用域和生存期。

8.内部函数与外部函数。

八、编译预处理(基础,笔试有考到宏替换)1.宏定义:不带参数的宏定义;带参数的宏定义。

2.“文件包含”处理。

九、指针(这个很重要,上机题有这方面的)1.指针与指针变量的概念,指针与地址运算符。

2.指针类型、指针变量与指针引用数据。

3.用指针作函数参数。

4.返回指针值的指针函数。

5.指针数组,指向指针的指针,MAIN函数的命令行参数。

十、结构体(即“结构”)与共用体(即“联合”)1.结构体和共用体类型数据的定义方法和引用方法。

江苏省计算机等级考试二级C语言笔试辅导-资料

江苏省计算机等级考试二级C语言笔试辅导-资料

答案: byye101A
9
[学校单选题] 表达式“1e-8/2+1.0f”值的数据类型是 (3) 。
A. int
B. long C. float
D. double
答案:D
[学校单选题]以下局部变量声明中正确的是 (2) 。
A. int char=2; B. void a=0;
C. int a=b=0; D. int a, b=a=0;
[学校单选题] 已知某编译系统中sizeof(int)的值为2,在该编 译系统中执行以下 (10) 语句时输出结果不是39999。
A. printf("%u",39999);
B. printf("%d",39999);
C. printf("%ld",39999);
D. printf("%lu",39999);
个不含空格的字符串保存到s数组中,则下列语句中正确
的是

A. scanf("%s",s); B. scanf("%s",s[0]);
C. s=gets();
D. s=getchar();
答案:A
[填空题] 已知有声明和语句“int a;scanf(”a=%d“,&a);”,欲 从键盘上输入数据使a中的值为3,则正确的输入应是 。
B. s=x<0?-1:(x>0?1:0)
C. s=x<=0?-1:(x==0?0:1)
D. s=x>0?1:x==0?0:-1
答案: C
[单选题] 若有程序段“char c=256; int a=c;”,则执行该程 序段后a的值是 。

计算机等级考试二级C语言辅导

计算机等级考试二级C语言辅导

计算机等级考试二级C语言
考前辅导
主要内容
一、试卷分析
二、C语言概述
三、数据类型及其运算
四、语句
五、数组
六、函数
七、编译预处理
八、指针
九、结构体与共用体
十、文件
十一、主要算法分析
十二、算法
7、数的拆分与拼装
满足条件的数。

如:水仙花数,掌握循环分解方法。

8、字符串
子串、子串替换、单词数、数制转换、排序、合并、四文9)编程实现字符串处理函数
10)牛顿迭代法、二分法求方程的根
11)链表操作
创建、插入、删除、输出结点、逆置、排序、循环链表。

12)其它注意事项
实数判零
整除及求余
gets。

和scanf()的区别
二维数组的输出问题
十二、算法字符串处理函数注意strcmp(sl,s2)的用法char*s,c[20];的含义及用法
函数:类型、调用、实参、形参、返回值
c=getchar()的使用
注意整数相除的表达式
分段函数求解
逻辑表达式求解及avxvb含义表达式的书写
十三、上机考试注意事项
1、填空
2、改错题可能出现的情况(四个错误)
***函数调用(类型、调用方式、参数对应等)
*文件包含缺少
*变量的使用
*前面提到的其它注意事项
***主要算法
3、编程题(算法+文件操作)
***一定是文件操作题(五个要素)
*文件名,输出位置一定按题目要求进行
*算法有一定难度(一般都是小算法的综合)。

全国计算机二级考试C语言(最全复习资料)

全国计算机二级考试C语言(最全复习资料)

全国计算机二级考试C语言(最全复习资料)全国计算机二级考试C语言(最全复习资料)C 语言,是一种通用的高级计算机编程语言,广泛应用于软件开发和系统编程。

而全国计算机二级考试则是衡量个人计算机应用能力的重要考试之一。

对于考生来说,准备充分的复习资料是非常重要的。

在这篇文章中,我将为大家提供最全面的 C 语言复习资料,帮助考生更好地备战全国计算机二级考试。

一、基础知识1. C 语言简介:C 语言的历史背景,应用领域等。

2. C 语言的基本语法:变量、数据类型、运算符、控制语句等。

3. 输入和输出:scanf、printf等输入输出函数的使用方法。

4. 数组和字符串:一维数组、多维数组、字符串处理等。

二、函数与指针1. 函数的定义和调用:函数的作用与优势,函数的定义、声明和调用方法。

2. 函数参数传递:值传递和引用传递,指针作为函数参数的使用。

3. 指针的概念和基本操作:指针的定义与初始化,指针的运算,指针与数组的关系等。

4. 动态内存分配:malloc、free等动态内存管理函数的使用方法。

三、结构体与文件操作1. 结构体的定义和使用:结构体的成员变量、结构体数组等。

2. 文件的读写操作:文件的打开、读写与关闭,文件指针的移动等。

3. 文件的顺序读写和随机读写:顺序读写和随机读写的区别与应用。

4. 文件的二进制读写和文本读写:二进制文件和文本文件的区别与使用方法。

四、高级特性1. 位运算:位运算符的使用,位运算在计算机中的应用。

2. 内存管理:静态存储、自动存储、动态存储的概念与区别。

3. 结构体与共用体:结构体和共用体的定义与使用,二者之间的区别。

4. 预处理器:宏定义、条件编译等预处理器的基本概念与使用方法。

五、实践应用1. 综合练习:包括通过 C 语言实现常见算法和数据结构等综合练习题。

2. 项目开发:参与一个小型项目开发,锻炼实际编程能力。

以上是全国计算机二级考试C语言复习资料的基本框架。

考生可以根据自己的实际情况进行针对性的学习和练习。

江苏省计算机等级考试二级C语言笔试辅导题目--资料

江苏省计算机等级考试二级C语言笔试辅导题目--资料

答案:D
10
⑶ 运算符和表达式的表示及使用
① 赋值表达式,赋值运算符的左值要求
② 算术表达式。++、--运算符左值要求。溢出。
③ 关系表达式与逻辑表达式,逻辑表达式优化处理
④ 逗号表达式
⑤ 条件表达式
⑥ 表达式运算中操作数类型自动转换与强制转换
【考题解析】
[单选题] 若有声明“double x=3,c,*a=&x,*b=&c;”,则下列语
答案: 2
[单选题]以下选项中,不能用作标识符的是 。
A. print
B. FOR
C. &a D. _00
答案:C
[单选题] 以下选项中,
是C语言关键字。
A. printf B.include
C.fun
D.default
答案:D
[学校单选题] 执行语句“printf(”bye\bye101\101“);”时输出到 屏幕的结果为 (22) 。
江苏省计算机等级考试 二级C语言 笔试辅导
1
笔试概况
• 考试时间:2小时 • 合格、优秀成绩要求 • 内容题型及分值
– 信息技术 选择题(20分)
– C语言 选择题(10分) 填空题(30分):简单填空(5分) 阅读程序(13分) 完善程序(12分)
• 答题策略
2
语法考试要求及考题解析
(2007秋~2010春)
A) C语言程序将从源程序中第一个函数开始执行 B) 可以在程序中由用户指定任意一个函数作为主函数,程 序将从此开始执行
C) C语言规定必须用main作为主函数名,程序将从此开始 执行,在此结束
D) main可作为用户标识符,用以命名任意一个函数作为主 函数

全国计算机等级考试二级C语言笔试培训机构复习题(57页)

全国计算机等级考试二级C语言笔试培训机构复习题(57页)

2012年3月份全国计算机等级考试二级C语言笔试培训机构复习题内部资料一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为A)图B)图C)结构图D)数据流图(2)结构化程序设计主要强调的是A)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性(3)为了使模块尽可能独立,要求A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(4)需求分析阶段的任务是确定A)软件开发方法B)软件开发工具C)软件开发费用D)软件系统功能(5)算法的有穷性是指A)算法程序的运行时间是有限的B)算法程序所处理的数据量是有限的C)算法程序的长度是有限的D)算法只能被有限的用户使用(6)对长度为n的线性表排序,在最坏情况下,比较次数不是n(1)/2的排序方法是A)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)如果进栈序列为e1234,则可能的出栈序列是A)e3142 B)e2431 )e3412 D) 任意顺序(8)将图转换到关系模式时,实体与联系都可以表示成A)属性B)关系C)键D)域(9)有三个关系R、S和T如下:RB C Da 0 k1b 1 n1SB C Df 3 h2a 0 k1n 2 x1TB C Da 0 k1由关系R和S通过运算得到关系T,则所使用的运算为A)并B)自然连接C)笛卡尔积D)交(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(11)以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(12)下列可用于C语言用户标识符的一组是A), , B)a3_3123 C), , D)2a, ,(13)以下选项中可作为C语言合法常量的是A)-80 B)-080 C)-8e1.0 D)-80.0e(14)若有语句*[5];,以下叙述中正确的是A) 定义是一个数组,每个数组元素是一个基类型为为指针变量B) 定义是一个指针变量,该变量可以指向一个长度为5的字符型数组C) 定义是一个指针数组,语句中的*号称为间址运算符D) 定义是一个指向字符型函数的指针(15)以下定义语句中正确的是A) 0; B) 65+1′b′; C) 1,*,*;(16)有以下程序段; k;′a′;12;(","); (" \n");已知字符a的码值为97,则执行上述程序段后输出结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,1212D)a,9712(17)有以下程序(){ 1;(1<50)(!(5)!(3)) ;("\n");}程序的输出结果是A)409 B)277 C)1 D)91 (18)当变量c的值不为2、4、6时,值也为"真"的表达式是A)(2)(4)(6)B)(c>=2 c<=6)(3)(5)C)(c>=2<=6)!(2)D)(c>=2 c<=6)(21)(19)若变量已正确定义,有以下程序段357;(a>b) ; ;() ;("\n");其输出结果是A)程序段有语法错B)3,5,3 C)3,5,5 D)3,5,7 (20)有以下程序<>(){ 1000;(x){ 1:(y){ 0; ;1; ;}2; ; ;3; ;}("\n");}程序的运行结果是A)10 B)22 C)11 D)21(21)下列程序的输出结果是""(){ 00;(1<10){ (20){;;};}(""); }A)44 B)45 C)54 D)55(22)已知0;(1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对(23)下面程序的输出结果是(){ a[10]={1,2,3,4,5,6,7,8,9,10},*;("\n",*(2));}A)3 B)4 C)1 D)2(24)以下错误的定义语句是A) x[][3]={{0},{1},{1,2,3}}; B) x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C) x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}}; D) x[][3]={1,2,3,4};(25)有以下程序( * t){ (*s){ (*)*′a′+′A′;; } }(){ 1[100]=""′d′;(1); ("\n"1);}程序运行后的输出结果是A) B) C) D)(26)有如下程序(){ [2][5]={"6937","8254"},*p[2];0;(0<2)p[i][i];(0<2)(0[i][j]>′\0′2)10*[i][j]-′0′;("\n");}该程序的输出结果是A)69825 B)63825 C)6385 D)693825(27)有定义语句s[10];,若要从终端给s输入5个字符,错误的输入语句是A)([0]); B)(""1); C)(s); D)(""[1]);(28)以下叙述中错误的是A)在程序中凡是以"#"开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C) 是合法的宏定义命令行D)C程序对预处理命令行的处理是在程序执行的过程中进行的(29)设有以下说明语句{ n;[8];} ;则下面叙述中正确的是A) 是结构体变量名B)是结构体类型名C) 是结构体类型D) 是结构体类型名(30)以下叙述中错误的是A)函数用于从终端读入字符串B)函数用于从磁盘文件读入字符C)函数用于把字符串输出到文件D)函数用于以二进制形式输出数据到文件(31)以下能正确定义一维数组的选项是A) a[5]={0,1,2,3,4,5}; B) a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′}; C) {′A′,′B′,′C′}; D) a[5]="0123";(32)有以下程序<>(){ p[]={′a′, ′b′, ′c′}[10]={ ′a′, ′b′, ′c′};("\n"(p)(q));}以下叙述中正确的是A) 在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3B) 由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3C) 由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3D) 由于p和q数组中都没有字符串结束符,故长度都不能确定(33)有以下程序<><>(0<1)(1<)((s[i])>(s[j])) {[i][i][j][j];}}()(,5); ("\n"[0][4]);}程序的运行结果是A) B) C) D)(34)有以下程序<>f( x){ y;(01) (3);y;}(){ z;(3); ("\n");}程序的运行结果是A)0 B)9 C)6 D)8(35)下面程序段的运行结果是[]="",*;("\n",*(3));A)67 B)0 C)字符′C′的地址D)字符′C′(36)若有以下定义:{ ;*;} ,*p,*q;且变量a和b之间已有如下图所示的链表结构:指针p指向变量指向变量c。

c语言程序设计二级培训

c语言程序设计二级培训
c语言程序设计二级培训
一、选择题(请在【答题】菜单上选择【选择题】命令,启动选择题测试程序, 按照题目上的内容进行答题。作答选择题时键盘被封锁,使用键盘无效,考生须 使用鼠标答题。选择题部分只能进入一次,退出后不能再次进入。选择题部分不 单独计时。)
1、某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( )。
}
程序的运行结果是( )。
A. 5
B. 6
C. 4
D. 3
【答案】
A
【解析】
函数m1()返回两个参数中较小的数值,函数m2()返回两个参数中较大的数值,函数fun()返回两个参数之和,所以 fun(m1(x,y), m2(y,z)) = fun(m1(2,3), m2(3,1)) = fun(2,3) = 5,答案选择A选项。
6、有以下程序: #include <stdio.h> #define N 4 void fun(int a[][N]) { int i; for(i=0; i<N; i++) a[0][i] += a[N-1][N-1-i]; } void main() { int x[N][N]={{1, 2, 3, 4}, {5, 6, 7, 8}, {9,10,11,12}, {13,14,15,16}}, i; fun(x); for (i=0;i<N; i++)printf("%d,", x[i][i]); printf("\n"); }
程序运行后的输出结果是( )。
A. 17,6,11,16,
B. 1,6,11,16,
C. 4,7,10,13,
D. 5,13,21,29,

C语言二级辅导(基础知识)

C语言二级辅导(基础知识)

自动类型转换

同种数据类型的运算结果,还是该类型 不同种数据类型的运算结果,是两种类型中取值 范围更大的那种

long double > double > float > long > int > short > char
double float
精度高
long
unsigned int
精度低
char,short
C语言程序设计步骤

编辑、编译与运行 调试程序

关键字(Keyword)

C程序常见符号分类

标识符(Identifier)


又称为保留字,C语言中预先规定的具有固定含义的一些单词 数据类型修饰符int,控制语句return等

运算符(Operator)

系统预定义标识符,main,printf 等 用户自定义标识符,Add, x, y 等
printfthemin函数原型函数名形式参数函数返回值函数体函数执行过程的描述掌握函数类型和返回值不同类型函数定义缺省类型空类型理解函数传值调用形参实参及其参数单向传递掌握函数说明系统库函数说明用头文件包含理解理解理解函数参数类型和函数的传址调用数组名作为函数参数掌握理解函数嵌套调用和递归调用递归函数的执行过程知道理解函数定义和调用变量存储类别的概念自动寄存器外部及内部静态外部静态各种变量类型理解变量的作用域在函数外部函数内部复合语句内定义变量的作用域理解变量的生存期和有效期自动外部及内部静态外部静态变量的生存期和有效期知道编译预处理文件包含和宏定义知道变量的存储类别和编译预处理指针概念地址指针和指针变量的含义和表示掌握指针与地址运算符取地址运算符和取内容运算符理解用指针处理数组字符串数组字符串的指针以及指向数组字符串的指针变量通过指针引用以上各类型数据理解理解用指针作函数参数理解指针的高级功能main函数的命令行参数简介知道知道知道指针结构体类型数据结构体变量初始化理解理解结构体数组结构体数组定义初始化理解结构体指针变量指向结构体类型数组的指针变量理解知道链表用指针和结构体构成链表单向链表的建立输出删除与插入包括动态空间申请与释放理解结构体与共用体基本概念文件类型文本文件二进制文件文件指针理解文件操作文件的读写掌握常用库函数常用的库函数

二级C语言培训班资料包

二级C语言培训班资料包

二级C语言培训班资料包全国等级考试C语言程序设计第1章程序设计基本概念1. 以下叙述中正确的是A)C语言比其他语言高级B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点 2. C语言中用于结构化程序设计的3种基本结构是A)顺序结构、选择结构、循环结构B)if,switch,breakC)for,while,do-whileD)if,for,continue 3. 下列叙述中正确的是)C语言编译时不检查语法 AB)C语言的子程序有过程和函数两种C)C语言的函数可以嵌套定义D)C语言的函数可以嵌套调用4. 以下叙述中正确的是A)构成C程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其他函数之前D)所有被调用的函数一定要在调用之前进行定义 5. 以下叙述中正确的是A)构成C程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其他函数之前D)C函数定义的格式是K&R格式6. 一个C语言程序是由A)一个主程序和若干子程序组成B)函数组成C)若干过程组成D)若干子程序组成7. C语言规定,在一个源程序中,main函数的位置A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后8. 以下叙述不正确的是A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面 9. C语言程序的基本单位是A)程序行 B)语句 C)函数 D)字符 10. 以下说法错误的是A)一个算法应包含有限个步骤B)在计算机上实现的算法是用来处理数据对象的怀化学院全国等级考试C语言程序设计 C)算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现 D)算法的目的是为了求解11. 下列选项中不是结构化程序基本结构的是A)顺序结构B)跳转分支结构C)选择结构D)循环结构填空题1. 设y是int型,请写出y为奇数的关系表达式【1】。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

两份资料现在相互补哦,如果有最新的资料会及时更新的,请各位老师先参照这两份备课,特别是公共基础知识的重点,一定要提醒学员认真阅读。

C 语言最重要的知识点复习资料笔试注意事项1、笔试满分100分,共两大题,选择70分40小题,填空30分15小题。

C语言占70分,公共基础占30分。

选择题的前10题和填空题的前5题考公共基础知识,其他考知识。

C语言笔试时间为2010年3月27日上午9:00-10:30。

2、选择用铅笔涂答题卡,填空用黑色签字笔在答题上写。

3、考前准备好身份证、准考证、2B铅笔、橡皮、黑色签字笔、手表等。

第一章C语言基本知识【考点1】C程序C语言程序结构有三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)【考点2】main函数每个 C 语言程序中main 函数是有且只有一个。

读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

【考点3】存储形式计算机的数据在电脑中是以二进制的形式保存。

最低的存储单元是bit(位),位是由为0 或者1构成。

byte 是指字节, 一个字节= 八个位。

数据存放的位置就是它的地址。

【考点4】注释是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。

【考点5】书写格式每条语句的后面必须有一个分号,分号是语句的一部分。

一行内可写多条语句,一个语句可写在多行上。

【考点6】标识符合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。

有其它元素就错了。

并且第一个必须为字母或则是下划线。

第一个为数字就错了。

C语言标识符分如下3类(1)关键字。

它们在程序中有固定的含义,不能另作他用。

如int、for、switch等。

(2)预定义标识符。

预先定义并具有特定含义的标识符。

如define、include等。

(3)用户标识符。

用户根据需要定义的标识符,符合命名规则且不与关键字相同。

关键字不可以作为用户标识符号。

main define scanf printf 都不是关键字。

迷惑你的地方If 是可以做为用户标识符。

因为If 中的第一个字母大写了,所以不是关键字。

【考点7】实型数据实型数据的合法形式:小数形式和指数形式。

掌握判定指数形式合法性。

2.333e-1 就是合法的,且数据是2.333×10-1。

考试口诀:e 前e 后必有数,e 后必为整数。

【考点8】字符字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

'0' 的ASCII 数值表示为48,'a' 的ASCII 数值是97,'A'的ASCII 数值是65。

字符型和整数是近亲:char a = 65 ;printf(“%c”, a); 得到的输出结果:aprintf(“%d”, a); 得到的输出结果:65一般考试表示单个字符错误的形式:'65' "1"字符是可以进行算术运算的,记住:'0'-0=48大写字母和小写字母转换的方法:'A'+32='a' 相互之间一般是相差32。

【考点9】整型数据整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节:考试时候一般会说,在16 位编译系统,或者是32 位系统。

碰到这种情况,不要去管,一样做题。

掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节就可以了。

【考点10】转义字符转义字符的考查:在程序中int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x 必须存在。

在程序中int a = 06d, 是一个八进制的形式。

在转义字符中,‟\x6d‟ 才是合法的,0 不能写,并且x 是小写。

…\141‟ 是合法的,0 是不能写的。

…\108‟是非法的,因为不可以出现8。

【考点11】算术运算算术运算符一共有+、—、*、/、%这五个。

%符号两边要求是整数。

不是整数就错了。

三种取整丢小数的情况:不是四舍五入是舍掉小数部分。

1、int a =1.6;2、(int)a;3、1/2;3/2;【考点12】强制类型转换将一个运算对象转换成指定类型,格式为(类型名)表达式一定是(int)a 不是int(a),注意类型上一定有括号的。

注意(int)(a+b)和(int)a+b 的区别。

前是把a+b 转型,后是把a 转型再加b。

【考点13】赋值是表达式就一定有数值。

赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。

复合赋值运算符:注意:a*=m+2 是a=a*(m+2)自加、自减表达式:假设a=5,++a(表达式的值为6),a++(表达式的值为5);j=a++;等价于j=a;a=a+1; 而j=++a;等价于a=a+1;j=a;。

考试口诀:++在前先加后用,++在后先用后加。

【考点14】逗号运算逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。

(2,3,4)的表达式的数值就是4。

【考点15】数制转换一定要记住二进制如何转换成十进制。

八进制是没有8 的,逢8 进1,018 的数值是非法的。

【考点16】位运算会有一到二题考试题目。

C语言提供6种位运算符:按位求反~,按位左移<<,按位右移>>,按位与&,按位异或|,按位或^。

总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。

异或运算的规则:0异或1得到1,0异或0得到0,1异或1得到0。

可记为“相同为0,不同为1”。

见教材31页例1。

在没有舍去数据的时候,<<左移一位表示乘以2;>>右移一位表示除以2。

第二章数据的输入输出(顺序结构)【考点1】printf函数格式为:printf(输出控制,输出列表)。

输出控制是用一对双引号括起来的,包含格式说明和原样信息。

输出列表包含若干输出项。

%d对应整型,%f对应单精度实型,%c对应字符型,%o对应八进制无符号整型,%x对应无符号十六进制整型,%u对应无符号整型,%e对应指数型,%s对应字符串型。

可在%和格式字符之间加一个数来控制数据所占的宽度和小数位数。

【考点2】scanf函数格式为:scanf(输入控制,输入列表)注意该函数的第二个部分是&a 这样的地址,不是a;scanf(“%d%d%*d%d”,&a,&b,&c); 跳过输入的第三个数据。

【考点3】putchar与getchar函数可用于输出或输入单个字符,这两个函数是stdio.h文件中的库函数,它们是printf与scanf函数的简化。

char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。

putchar(…y‟)把字符y 输出到屏幕中。

【考点4】如何交换两个变量如何实现两个变量x ,y 中数值的互换(要求背下来)不可以把x=y ,y=x; 要用中间变量t=x;x=y;y=t。

【考点5】实现保留三位小数如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)float x=12.34567;float y=((int)(x*1000+0.5))/1000.0;这个有推广的意义,注意x = (int)x 这样是把小数部分去掉。

第三章选择结构特别要注意:c 语言中是用非0 表示逻辑真的,用0 表示逻辑假的。

【考点1】关系运算关系运算符有6个,分别是>,>=,<,<=,==,!=,前四种优先级高于后两种。

关系表达式:关系表达式真时为1,假时为0当关系的表达是为真的时候得到1。

如9>8 这个是真的,所以表达式的数值就是1。

【考点2】逻辑运算只能为1(表示为真),或0(表示假)a) 共有三种逻辑运算符号。

逻辑非(!),辑与(&&),逻辑或(||)。

b) !>&&>|| 优先的级别。

c) 注意短路现象。

考试比较喜欢考到。

例a++||b++,如果表达式a++的值非零,则表达式b++不再执行。

d) 要表示x 是比0 大,比10 小的方法。

0<x<10 是不可以的(一定记住)。

是先计算0<x 得到的结果为1 或则0;再用0,或1 与10 比较得到的总是真(为1)。

所以一定要用(0<x)&&(x<10)表示比0 大比10 小。

【考点3】if语句可以单独出现,也可以与else匹配出现。

if语句可以嵌套,这时else总是与离它最近的且没有与else匹配的if匹配。

注意if语句的子句是紧接if或else的一句,如有多句需要用{}括起来。

【考点4】条件运算是唯一的三目运算符,格式:表达式1 ?表达式2 :表达式3表达式1值为非0时,整个表达式值为表达式2的值,表达式1值为0时,整个表达式值为表达式3的值。

考试口诀:真前假后。

【考点5】switch语句a) 一定要注意有break 和没有break 的差别,书上(53,54 页)的两个例子,没有break时候,只要有一个case 匹配了,剩下的都要执行,有break 则是直接跳出了switch 语句。

b) switch 只可以和break 一起用,不可以和continue一起用。

c) switch(x) x:是整型常量,字符型常量,枚举型数据。

{case 1: …. 不可以是变量。

case 2: ….}switch后小括号里面的表达式不能为实型,case后表达式不能有变量。

口诀:switch表不为实,case表不为变。

第四章循环结构【考点1】三种循环结构while();do- while();for()三种。

三种结构的格式及执行顺序详见教材第58、62、64页。

b)for 循环当中必须是两个分号,千万不要忘记。

c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。

d) do-while()循环的最后一个while();的分号一定不能够丢。

(当心上机改错),do-while 循环是至少执行一次循环。

【考点2】break与continuebreak 和continue 的差别记忆方法:break:是打破的意思,(破了整个循环)所以看见break 就退出这一层循环。

continue:是继续的意思,是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。

【考点3】循环的嵌套就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般只考查两层嵌套,循环嵌套通常是处理二维数组。

相关文档
最新文档