二级C语言培训材料印刷.docx

上传人:文*** 文档编号:68227550 上传时间:2022-12-27 格式:DOCX 页数:137 大小:717.29KB
返回 下载 相关 举报
二级C语言培训材料印刷.docx_第1页
第1页 / 共137页
二级C语言培训材料印刷.docx_第2页
第2页 / 共137页
点击查看更多>>
资源描述

《二级C语言培训材料印刷.docx》由会员分享,可在线阅读,更多相关《二级C语言培训材料印刷.docx(137页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、目录第一章考试大纲2第二章考试时间及考试题型3考试时间3第三章考试环境3一、考试软件环境3二、考试系统使用3第四章考试内容7一、常见考点7二、考试样卷122013年4月试题库19第一套题19第二套题32第三套题44 56第五套题67第六套题78第七套题89第八套题101第九套题113I 123第一章考试大纲基本要求1 .熟悉Visual C+ 6.0集成开发环境。2 .掌握结构化程序设计的方法,具有良好的程序设计风格。3 .掌握程序设计中简单的数据结构和算法并能阅读简单的程序。4 .在Visual C+ 6.0集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程 序的能力考试内容一、C语

2、言程序的结构1 .程序的构成,main函数和其他函数。2 .头文件,数据说明,函数的开始和结束标志以及程序中的注释。3 .源程序的书写格式。4 . C语言的风格。二、数据类型及其运算1. C的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义方法。2. C运算符的种类、运算优先级和结合性。3. 不同类型数据间的转换与运算。4. C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗 号表达式)和求值规则。三、基本语句1 .表达式语句,空语句,复合语句。2 .输入输出函数的调用,正确输入数据并正确设计输出格式。四、选择结构程序设计1 .用if语句实现选择结构。2 .

3、用switch语句实现多分支选择结构。3 .选择结构的嵌套。五、循环结构程序设计1. for循环结构。2. while 和 do-while 循环结构。3. continue 语句和 break 语句。4. 循环的嵌套。六、数组的定义和引用1 . 一维数组和二维数组的定义、初始化和数组元素的引用。2 .字符串与字符数组。七、函数1 .库函数的正确调用。2 .函数的定义方法。3 .函数的类型和返回值。4 .形式参数与实在参数,参数值传递。5 .函数的正确调用,嵌套调用,递归调用。6 .局部变量和全局变量。7 .变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。八、编译预处理1 .

4、宏定义和调用(不带参数的宏,带参数的宏)。2 .文件包含”处理。九、指针1 .地址与指针变量的概念,地址运算符与间址运算符。2 . 一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变 量的定义。通过指针引用以上各类型数据。3 .用指针作函数参数。4 .返回地址值的函数。5 .指针数组,指向指针的指针。十、结构体(即“结构”)与共同体(即“联合”)1 .用typedef说明一个新类型。2 .结构体和共用体类型数据的定义和成员的引用。3 .通过结构体构成链表,单向链表的建立,结点数据的输出、删除与插入。十一、位运算1 .位运算符的含义和使用。2 .简单的位运算。十二、文件

5、操作只要求缓冲文件系统(即高级磁盘I/O系统),对非标准缓冲文件系统(即低级磁盘I/O系 统)不要求。1 .文件类型指针(FILE类型指针)2 .文件的打开与关闭(fopen,fclose)。3 .文件的读写(fputc, fgetc, fputs. fgets, fread, fwrite. fprintf, fscanf 函数的应用),文 件的定位(rewind, fseek函数的应用)。第二章考试时间及考试题型一、考试时间考试时间为120分钟。时间由考试系统自动进行计时,提前5分钟自动报警来提醒考试及时 存盘。考试时间用完,考试系统将自动锁定计算机,考试将不能继续进行考试。二、考试题型二

6、级C语言满分100分,共有四种类型的考题,即选择题(40分)、程序填空题(18分)、程序修改题(18分)和程序设计题(24分)第三章考试环境一、考试软件环境操作系统:中文Windows 7应用软件:Microsoft Visual C+ 6.0 和 MSDN 6.0二、考试系统使用1、首先双击桌面上的无纸化考试系统图标2、出现如下图所示界面3、单击开始登录按钮,出现如下图所示窗口,输入考生的准考证号4、单击“登录”按钮,出现如卜图所示确认考生信息窗口5、如信息有错,则单击“重输考号”按钮,重新录入考生信息;如信息无误,单击”开始 考试”按钮,会出现提示“正在抽取试题,请稍候。”,如下图所示:知

7、窗口:6、试 题抽 取成 功, 会出 现如F图 所示 考试 内容 和考 试须7、勾选复选框“已阅读“,单击”开始考试并计时”按钮,出现如下图所示试题窗口8、按照窗口提示内容进行答题操作,考题的四个部分答题顺序可自由选择。KEE37;2074500739037079、做完所有的题目以后,单击窗口上的 按钮,弹出提示信息,如下图所示:7确认要保存并退HI选择题系统吗? I若要退出,则考生不能再次进入!10、如果确认交卷,则单击“确认”按钮,出现如下图所示提示信息:系统正在进行交卷处理,请稍候!11、交卷成功,则会出现考生成绩。第四章考试内容一、常见考点总体上必须清楚的:1)程序结构是三种:顺序结构

8、,循环结构(三个循环结构),选择结构(if和switch)2)读程序都要从main。入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是它的地址.4)bit是位是指为。或者1。byte是指字节,一个字节=8个位.概念常考到的:1)编译预处理不占运行时间。C语言编写的程序称为源程序,它以ASCII数值存放在文本 文件中。通过编译命令将无语法错误的“源程序”(编译为二进制的“目标程序”(.obj), 再通过组建命令,将“目标程序”链接为一个可执行程序(.exe),2)每个C语言程序中main函数是有且只有一个。3)函数可以

9、嵌套调用,但不能嵌套定义。4)算法是一定要有输出的,但可以没有输入。5) break可用于循环结构和switch语句。6)逗号运算符的优先级别最低。 C语言程序设计的基础知识1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。有其它元素就错了。并且第一个必须为字母或则是下划线。第一个为数字就错了。关键字不可以作为用户标识符号。main define scanf printf都是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。2)实型数据的合法形式:考试口诀:e前e后必有数字,e后必须为整数。.3)字符数据的合法形式::T是字符占一个字节,

10、1是字符串占两个字节(含有一个结束符号)。0的ASCII数值表示为48, 3的ASCH数值是97 的ASCH数值是65。4)整型一般是两个字节,字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管, 一样做题。掌握整型-一般是两个字节,字符型是一个字节,双精度一般是4个字节就可以了。 5)转义字符的考查:在程序中inta= 0x6d,是把一个十六进制的数给变量a,注意这里的Ox必 须存在。在程序中inta = 06d,是一个八进制的形式。在转义字符中,x6cT 才是合法的,。不能写,并且x是小写。141是合法的。108是非法的,因

11、为不可以出现8。转义字符意义ASCII码值(十进制)a 响铃(BEL) 007b 退格(BS) 008f 换页(FF) 012n 换行(LF) 010r 回车(CR) 013t水平制表(HT) 009v垂直制表(VT) 011反斜杠092?问号字符063单引号字符039双引号字符0340 空字符(NULL) 000ddd任意字符三位八进制xhh任意字符二位十六进制6)算术运算符号的优先级别:同级别的有的是从左到右,有的是从右到左。7)强制类型转换:一定是(int) a不是int (a),注意类型上一定有括号的。注意(int) (a+b)和(int) a+b的区别前是把a+b转型,后是把a转型再

12、加b。8)表达式的考查:是表达式就一定有数值。赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。自加、自减表达式:假设a=5, +a (是为6), a+ (为5);运行的机理:+a是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这 个+a表达式的数值为6,而a+是先用该表达式的数值为5,然后再把a的数值加上1为6, 再放到变量a中。进行了+a和a+后在下面的程序中再用到a的话都是变量a中的6 了。 考试口诀:+在前先加后用,+在后先用后加。逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。(2, 3, 4)的表达式的数值就是4。9)

13、位运算的考查:例 1 :char a = 6, b;b = a2;这种题目的计算是先要把a的十进制6化成二进制,再做位运算。一定要记住,在没有舍去数据的时候,8这个是真的,所以表达式的数值就是1;2)逻辑表达式:只能为1 (表示为真),或0 (表示假)a) 共有& II !三种逻辑运算符号。b) ! &11优先的级别。c) 注意短路现象。考试比较喜欢考到。d) 要表示x是比0大,比10小的方法。0x10是不可以的(一定记住)。是先计算 0x得到的结果为1或则0:再用0,或1与10比较得到的总是真(为1)。所以一定要用 (0x)&(x x/y/zD、x*z/y21、有以下程序#include s

14、tdio.hmain()(int i,j,k,a=5,b=6;i=(a=b)?+a:b;j=a+; k=b;printf(d,%d,%dn”,i,j,k);程序的运行结果是A、7, 6, 5 B、5, 5, 5 C、7, 5, 5D、5, 6, 522、设变量x为long int型并已经正确赋值,以下表达式中能将x的百位上的数字提取出来 的是C、x%100/10D、x/100%10A、x/10%100 B、x%10/1023、有以下程序#include stdio.hmain()(int i j,x=0;for(i=0;i2;i+)X-H-;for(j=0;j=3;j+) if(j%2=0)

15、continue;x+;X+;) printf(x=%dn”,x);) 程序的运行结果是A、x=4B、x=624、有以下程序 #include stdio.h main()(int sum=0,x=5;do sum+=x; while(!x); printf(M%dnH,sum);程序的运行结果是C,x=8D、 x=12A、 0B、 525、有以下程序#include stdio.hmain()(char ch=Z;ch=(ch-A,+ l)%26+,A,;putchar(ch);)程序的运行结果是C、14D、15A、ZB、YC、BD、A26、以下函数的功能是: double fun(doub

16、le a,int) (int i;double s=1.0;for(i=l;i=n;i-H-)s=;计算a的n次方作为函数值返【可return s;为实现上述功能,函数中下划线处应填入的是A、s*iB、s*a C、s+i*i D、s+a*a27、在C语言程序中,下列说法正确的是A、函数的定义可以嵌套,但函数的调用不可以嵌套B、函数的定义不可以嵌套,但是函数的调用可以嵌套C、函数的定义和调用均不可以嵌套D、函数的定义和调用均可以嵌套28、若主函数中定义语句:int a10,b10,c;在主函数前定义的fun函数首部为:voidfun(intxU), 则以下选项中错误的调用语句是A、fun(b);

17、 B、fun(&c); C、fun(&a3); D、fun(bl);29、有以下程序include stdio.hmain()(int k,n=0;char c,str=teachH;for(k=0;strk ;k+)(c=strk;switch(k)(case 1 :case 3:case 5: putchar(c); printf(M%dM,+n);break;default: putchar(N);)程序运行的结果是A、Ne INNB、ela2e3 C、NelNc2N D、NalNNNN30、以下叙述中错误的是A、同一个数组中所有元素的类型相同B、不可以跳过前面的数组元素,给后面的元素赋

18、初值C、定义语句:inta10=0;给a数组中所有的元素赋初值0D、若有定义语句:int a4= 1,2,3,4,5;编译时将忽略多余的初值31、执行以下程序段后,s的值为:int a=l,2,3,4,5,6,7,8,9,s=0,k;for(k=0;k8;k+=2)s+=*(a+k);printf(%d,s);A、13 B、16 C、17 D、4532、有以下程序#include stdio.h#define N 4void fun(int aN,int bf) int i;for(i=0;iN;i+)bi=aiN-l-i;Imain()int xNN= 1,23,4,5,6,7,8,9,10

19、,11,12,13,14,15,16),yN,i;fun(x,y);for(i=0;iN;i+)printf(%d,yi);printf(n);)程序的运行结果是A、1, 2, 3, 4, B、3, 6, 9, 12,C、4, 7, 10, 13, D、L 5, 9, 13,33、有以下程序include ,stdio.hM#include string.hn main() (char str= Hello,Beijing0);printf(n%d,%dn,strlen(str),sizeof(str);程序的运行结果是A、13, 13 B、13, 14 C、13, 15 D、14, 1534

20、、有以下程序#include stdio.hvoid fun(char (*p)6)(int i;for(i=0;i 4 B、5 C、6 D、736、有以下程序#include Mstdio.h#define M 5#define f(x,y) x*y+M main() (int k;k=f(2,3)*f(2,3);printf(M%dn;k);)程序的运行结果是A、22 B、41 C、100 D、12137、有以下定义:struct dataint i; char c; double d;x;以下叙述错误的是A、x的内存地址与x.i的内存地址相同B、struct data是一个类型名C、初始

21、化时,可以对x的所有成员同时赋初值D、成员i、c和d是占用的同一个存储空间38、有以下程序#include stdio.h1#include ,string.hntypedef struct char name9; char sex; float score2;STU;void f(STU *a)(strcpy(a-name /Zhao*);a-sex=m;a-score 1 =90.0;main()STU c= QianVf,95.0,92.0),*d=&c;f(d);printf(M%s,%c,%2.0f,%2.0fn,d-name,c.sex,c.score0,c.scorel);)程序

22、的运行结果是A、Qian,f,95,92B、Zhao,f,95,90C、Zhao,m,95,90D、Zhao,f,95,9239、若有以下定义struct ttchar name10; char sex; aa=*taaaa,F, ,*p=&aa;则错误的语句是A、scanf(%c”,aa.sex);B、aa.sex=getchar();C、printf(%cn,(*p).sex)D、printf(%crT,p-sex40、若有说明:typedef struct int a; charc;W;则以下叙述中正确的是A、编译后系统为W分配5个字节B、编译后系统为W分配6个字节C、编译后系统为W分配

23、8个字节D、编译后系统不为W分配存储空间二、程序填空题1、程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数 据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指文件中最后一 个学生的数据,即用新的学生数据覆盖该学生原来的数据。其它学生的数据不变。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的Blank.c中,不得增行或删行,也不得更改程序的结构。 源程序如下:#include #define N 5typedef struct student(long sno;char name10;f

24、loat score3;STU;void fun(char filename,STU n)FILE *fp;/*found*/ fp=fopen(1,rb+”);/*found*/fseek(fp,-l L*sizeof(STU),2);/*found*/ fwrite(3,sizeof(STU),l ,fp); fclose(fp);main()(STUtN= 10001;*MaChaoM,91,92,77), 10002,MCaoKaiM,75,60,88), 10003,LiSiM,85,70,78), 10004 ,FangFang”,90,82,87, 10005, “ZhangSa

25、n”,95,80,88;STU n=10006,nZhaoSin,55,70,68,ssN;int ij;FILE *fp;fp=fopen(Hstudent.dat,wbH);fwrite(t,sizeof(STU),N,fp);fclose(fp);fp=fopen(sludent.daTJrb);fread(ss,sizeof(STU),N,fp);fclose(fp);printf(nThe original data :nn);for(j=0;jN;j+)printf(unNo:%ld Name:%-8s Score:ss|j.sno,ssj.name);for(i=0;i3;i+)

26、printf(H%6.2f;ss|j.scorei);printf(nn);)fun(studenl.dat,n);printf(nThe data after modifing:nnn);fp=fopen(,student.dat,rb,);fread(ss,sizeof(STU),N,fp);fclose(fp);for(j=0;jN;j+)printf(HnNo:%ld Name:%-8s Score:n,ssj.sno,ssj.name);for(i=0;i3;i+)printf(M%6.2f*,ssj.scorei);printf(HnM);)三、程序修改题(见教材P263)四、程序

27、设计题(见教材P264)2013年4月试题库第一套题一、选择题道在【管回菜单上选择【选择题】命令,启动选择题测试程序,按照题目上的内容或存答题。短翳龈款须使用耐答题。年择题物分不箪强计时.连持5: “1)”o)每小题1分,共g分)下列A). B). C). D)四个选项中,只有一个选以是正0的.1)算法的有穷性是指OA)算法程序所处理的数据量是有限的OB)算法程序的长度是有限的OC)算法只能被有隈的用尸使用OD)算法程序的运行附间是有限的 2)下列数据结构中,能够按照先进后出原则存取数据的是O*)队列OB)技Oc)二叉树OD)循环队列31下列选项中不属于结构化程序设计原则的是O*)ObiOciOd)逐步求精 自顶向下 可封装 模块化OA)交Ob)笛卡尔积Oc)自然连接OD)并5)下列数据结构中,属于非战性结构的是OA)带链队列OB)循环队列OC)带链栈OD)二叉树6)软件设计中划分模块的一个准则是Oa)高内聚愉8合Ob)高内聚高耦合Oc)低内聚高耦合Od)低内聚低耦合7)下列叙述中正确的是Oa)栈是先进先出的线性表OB)队列是a先进后出的线性表OC)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构OD)循环队列是非线性结构 8)数据库应用系统中的核心问题是OA)数据庠管理员培训

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁