还剩18页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
C语言的结构171.函数,主(main)函数,main函数,函数函数是C语言中最重要的概念之一2.模块化,结构化这是程序设计两大思想之一,另外一个想法就是面向对象的程序设计3.文件包含命令,头文件文件包含属于编译预处理方面的内容4.doubles;,{}考生需要清楚C语言的源程序的基本格式是什么5.大,不太严格,好,直接这些就是C语言的特点,也是C语言相对于其他语言的特别之处6.Cmain函数在C语言源程序中的地位是非常特别的数据类型及其运算1.构造,指针,字符型、实型,结构体,共用体C语言提供了丰富的数据类型,这也是C语言比较灵活的原因之一2.B字符常量的书写形式要求是单引号而非双引号,所以D不对;ab不是字符而是字符串,所以C不对;八进制084超出了字符范围,也是错误的;只有B是合法的字符常量3.结合性,自左至右,自右至左运算符的优先级和结合性是比较重要的知识点,一些常用运算符的优先级和结合性必须熟悉4.A%前后要求是整型数据,其他均无此要求5.A在C语言中,逻辑与运算是通过运算符来实现的6.C这里涉及到数据类型的转换问题7.AC语言规定,在一个数据之后加一个L就表示该数据是长整型数据8.D自减运算符--的结合性是自右至左X--表示在使用x之后,使x减1;--x表示在使用x之前先使x减1基本语句1.函数调用,表达式,复合,空C语言的语句共有5类,如题所示2.BC语句有特定的格式,从这一点来考查就可以看出A和C是错误的,对于赋值语句,需要有赋值方和被赋值方,只有选项B适合3.BC语言的输入语句需要用到特定的输入函数scanf,在使用该函数时,需要注意函数的两个方面格式控制和地址表列4.D注意,使用输入函数scanf输入数据时不能规定精度,也就是说,如同选项D这种形式的写法是错误的5.D输入函数scanf的输入项不能是任何形式的常量,而必须是地址,并且地址项是必须存在的,而不能是可有可无的,即输入数据时必须指定变量地址186.C这是一个空语句的典型例子例子中还使用了函数调用语句调用标准函数getchar选择结构程序设计1.A选择结构给出了两种可选情况2.B对于不同的x给出了两种情况,在这两种情况下分别进行不同的运算3.C条件运算符要求有3个操作对象,所以称其为三目运算符,这是C语言中惟一的一个三目运算符条件表达式mzm:z的执行顺序是如果mz条件为真,则条件表达式取值m,否则取值z4.A对于本题,首先要清楚运算符的优先级非(!)运算符最高,然后是算术运算符、关系运算符和逻辑与和逻辑或、赋值运算符等5.Aswitch语句是多分支选择语句循环结构程序设计1.A对于一个循环,需要注意的是循环变量赋初值、循环条件和循环变量增值这三方面循环也可以嵌套,在这种情况下循环次数的计算要将两个循环体的次数相乘2.D首先要确定循环变量赋初值、循环条件和循环变量增值这3个起始条件,然后可以判断循环结束后i和j分别处于什么状态3.B同样要确定循环变量赋初值、循环条件和循环变量增值这三方面4.D本题包含一个循环语句和选择语句对于循环语句,需要清楚循环条件;对于选择语句,需要明确选择的各个分支5.D本题包含do-while循环结构考生同样需要清楚循环变量赋初值、循环条件和循环变量增值这三方面6.D对于do-while语句构成的循环,考生要分清它和for循环等语句的区别,特别是结束循环的条件之间的区别数组的定义和引用1.D在数组初始化时,如果花括弧中提供的初值个数大于数组长度,则做语法错误处理,如果小于数组长度,则其余的元素自动定为空字符2.Dprintf函数不能直接输出字符串3.C数组x的长度定义中包含一个空字符\0,而数组y中则不包含该空字符4.9,0数组的下标使用方法5.C对数组初始化或者赋值是有一定的规则的,选项A和B均是错误的赋值语句,而选项D的错误在于输入函数scanf不能这样使用6.C对字符数组不能使用赋值语句对其整体赋值7.C关于数组元素的引用方法函数1.B函数的实参是指用逗号分开的几个实体,而并不包括各个实体中的具体内容以本题为例,由逗号分开的实体有两个,而在这两个实体中的内容则不必理会192.C分清函数调用和表达式之间的区别sizeof所构成的仅仅是一个表达式而已,并不是函数调用同时要清楚,sizeof得到的值是double类型的字节数,所以是一个整型数据,而非双精度数据3.C本题需要清楚库函数strcpy的调用方法具体可以参见库函数手册4.C函数的类型即函数返回值的类型该函数的返回值是执行函数printf正确与否,正确则返回1,错误则返回0,所以该函数的类型是int型5.A函数既可以直接递归调用也可以间接递归调用6.A调用函数就是将实参的值传给形参,但形参的值是不能返回给实参的函数可以递归调用,但不能嵌套定义函数不必一定有返回值,可以是void类型的有调用关系的函数不必在一个源文件中,只要在主函数中说明即可7.C在C语言中,外部变量的隐含类别是静态存储类别编译预处理1.宏定义,文件包含考生应清楚C语言提供的预处理功能,并且清楚其概念2.答案略编译预处理是C语言特有的一个重要功能,它由预处理程序负责完成当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分做处理,处理完毕自动进入对源程序的编译编译预处理是在进行编译的第一遍扫描词法扫描和语法分析之前所做的工作3.MYSWAPcab根据宏定义的展开规则,本题不难作答4.D本题同样需要清楚宏定义的展开规则5.C宏定义的展开是编译预处理一章的考查重点,考生务必要对其熟悉指针1.A将一个整型变量赋给一个指针类型的变量,只能是将整型变量的地址赋给指针变量利用取地址运算符得到变量x的地址,从而将其赋给指针变量pb2.B比较字符串s和t的大小3.C说明int*ptr[m];的含义就是定义一个数组指针,该数组指针指向一个具有m个整型元素的一维数组4.D该题涉及到类型转换问题如果要将某一类型的数据转换成指针类型的数据,要用诸如(类型说明符*)这种形式来实现5.A显然是求字符串x的长度6.D对数组元素的引用,需要清楚的是数组的指针就是数组的首地址,也就是数组第一个元素的地址,然后可以在此基础上进行运算找到数组中某一指定的元素7.C在本题中定义了指针类型的函数,即函数的返回值为一个指针同时题目中使用了类型转换使得函数无返回值结构体与共用体1.构造,分量,域表20结构体的定义2.B结构体变量的引用需要用到成员(分量)运算符“.”一般引用形式是结构体变量名.成员名在本题中字符a属于结构体数组中某一成员的一个分量,对它的引用如同选项B所示的方式3.B结构体变量的定义方法有3种,题目中给出了其中的一种在这个定义中,struct是结构体类型的关键字;x,y,z都是结构体成员名;structex是结构体类型;example是结构体变量名而不是结构体类型名4.B结构体变量的定义方法有3种,选项B是其中的一种选项A因为有了typedef关键字,所以它是类型定义,而不是结构体变量的定义;选项D同样是类型定义;选项C的错误在于语法错误,结构体类型定义中缺少分号“;”5.C共用体是使用覆盖技术,让几个变量互相覆盖,也就是使得几个不同的变量共占同一段内存对于共用体来说,系统并不是为每一个共用体成员分配一个内存空间,而是所有成员公用同一段内存空间,这样一来,共用体变量所占的内存长度等于最长的成员的长度位运算1.二目,整型,字符型位运算符的形式2.结构体,位数位段的含义3.D逻辑运算符“||”和位运算符“|”在逻辑关系上是相同的,即参与运算的两个操作数只要其中一个为1,则结果就是1但这两个运算符在用法上却是不同的位运算符“|”要求其两边必须是以“位”为单位的数据,可以是整型或者字符型的数据,但不能是其他普通类型的数据并且在处理这些数据时是以“位”为单位进行的4.A“左移”运算符的性质是将一个数的各二进位全部左移若干位左移的位数是由“”右边的数指定的左移后溢出的高位丢弃,不足的低位补0本题需要注意位运算符的优先级5.D字符型数据和整型数据是相同的,所以字符型数据的存储形式就是整型数据的存储形式文件操作1.B标准函数fgetssnf的功能是从f所指向的文件读出一个长度为(n−1)的字符串,存入起始地址为s的内存空间2.A用“r(read)”方式打开文件只能用来向计算机内存读入数据而不能用来向该文件输出数据并且该文件必须是已经存在的文件,即不能打开一个并不存在的文件,否则程序会显示出错信息3.bi.datW在使用文件之前必须先将文件打开程序中if语句的作用就是将文件打开并将文件信息赋给文件指针fpwhile语句的作用是将从终端输入的文本写入文件,这就需要指定文件要以只写的方式打开214.A在main函数中,有两次调用子函数fun解答本题的关键就是要清楚这两次调用之间的关系在fun子函数中规定了打开文件的方式是“只写(w)”以这种方式打开文件时,如果原来不存在该文件,在打开时就自动新建立一个以指定名字命名的文件;如果原来已经存在一个以该文件命名的文件,打开时就将其自动删除而重新建立一个新文件因为两次调用的文件名是相同的,所以当第二次调用fun函数时,就自动将第一次建立的文件删除而创建了一个新的空文本文件,然后就将数据“hello”写入文件5.!feoffp在while语句里,逐个读取字符,每读取一个字符就使得变量num自加一,这样就可以得到整个文件的字符个数判断while语句停止的方法是,当读取的字符为文件结束标志时即跳出循环6.aaaabbbbccccmain函数是可以带有它自己的参数的,当它跟文件指针结合起来后就可以在命令行对文件进行操作附录8练习和习题答案第2章答案【选择题】1.C2.C3.A4.D5.B6.A7.B8.C9.D10.B53311.D12.D13.C14.D15.C16.C17.C18.D19.B20.A21.A22.B23.D24.D【填空题】1.处理器(中央处理器)存储器输入设备输出设备2.系统软件和应用软件3.VGA4.中央处理器内存储器5.只读存储器随机存储器6.软盘软盘驱动器控制器适配卡7.
1.44MB8.10249.格式化10.高11.键盘鼠标12.激光打印机13.开机、关机14.4月26日15.引导区16.电子布告栏系统17.局域网、广域网环行网、星形网、总线型双绞线网、同轴电缆网、光纤网、卫星网基带网、宽带网第3章答案【选择题】1.D2.C【填空题】1..EXE2..C.OBJ.EXE3.顺序结构、选择结构、循环结构第4章答案1.短整型无符号型2.十进制数指数3.算术逻辑条件指针求字节数4.C5.65,896.C534第5章答案【选择题】1.C2.B3.A4.D5.C6.C7.C8.C9.A10.C11.A12.D13.B14.C15.C16.A17.B18.D19.A【填空题】1.14252.
5.0,4,c=33.1234□54.65第6章答案【选择题】1.C2.C3.C4.B5.A6.B7.A8.C9.A10.A【填空题】1.ifa=B){x=1;printf####x=%d\nx;}else{y=2;printf****y=%d\ny;}2.23.204.a0ab第7章答案【选择题】1.B2.A3.B4.D5.A6.A7.C8.B9.C10.B11.D12.C13.B14.B15.C16.B17.D18.B19.B20.C【填空题】1.s=32.112y=1x=03.3,1,−1,3,1,−15354.1x=
0.0或x=0或!x0或!x
0.02xamin或x=amin第8章答案【选择题】1.C2.C3.D4.A5.A6.A7.C8.B9.D10.A11.A12.D13.A14.C15.A16.B17.C18.C【填空题】1.−850,2,02.QuickC3.9,04.125.18第9章答案【选择题】1.A2.B3.B4.D5.D6.B7.A8.C9.A10.A11.B12.D13.B14.B15.B【填空题】1.前者是调用一个函数的过程,而后者是直接或间接的调用函数自己2.x=8y=5x=8y=63.i=7j=6x=7i=2j=7x=54.1a[i-1]2a[9-i]5.voidfunints[]voidfunints[M]voidfunint*s三者可以任意次序第10章答案1.宏定义文件包含5362.663.913第11章答案1.指针变量,指针类型2.起始地址,数组元素的地址,指向数组的指针变量3.指针类型,字符串的首地址,字符数组的首地址4.入口地址5.指命令行中参数的个数,指针数组6.下标法,指针法7.字符数组,字符指针8.*a*b*c*minabc*a*b*c*min=*b*b*min=*c9.HOWhowdoyou10.ip=name+i11.10第12章答案1.构造分量表2.共用体枚举3.structst或ex4.structlist*q5.9第13章答案1.二目整型符型2.结构体位数第14章答案1.ASCII文件二进制文件普通文件备文件缓冲文件系统2.fprintf函数fscanf函数磁盘文件ewind函数fseek函数3.3!feoff1或feoff1==0模拟试卷一答案537
一、选择题(1~40题每个选项1分,41~50题每个选项2分,共60分)1.C2.C3.C4.B5.B6.D7.A8.C9.C10.D11.C12.B13.C14.A15.D16.B17.D18.C19.D20.B21.B22.C23.C24.D25.A26.B27.C28.A29.A30.D31.C32.D33.D34.A35.A36.D37.A38.A39.C40.B41.D42.C43.C44.B45.B46.B47.B48.C49.D50.A
二、填空题(每空2分,共40分)1.COPY*.TXTPRN2.CDA:3.ABCXYZ.DAT或ABCXYZ.DAT4.广域网5.1201606.−32768~327677.表示跳过它相应的数据8.10,30,409.Q10.6011.60012.max=q;13.Pxpy14.215.\016.s17.*p++18.lett.dat19.420.6*sizeofchar模拟试卷二答案
一、选择题(1~40题每个选项1分,41~50题每个选项2分,共60分)5381.B2.C3.D4.D5.B6.D7.A8.B9.D10.A11.A12.D13.D14.A15.A16.C17.C18.D19.C20.D21.B22.C23.D24.C25.C26.A27.D28.D29.A30.D31.B32.A33.C34.C35.D36.C37.C38.C39.B40.C41.C42.C43.B44.A45.D46.C47.B48.B49.D50.A
二、填空题(每空2分,共40分)1.AUTOEXEC.BAT2.外部3.COPYA:*.DATPRN4.RENXYZ\*.BAK*.FOR或RENAMEXYZ\*.BAK*.FOR5.ATTRIB+RWST.TXT6.
1.0或17.108.609.8,1710.voidfunint*q;或voidfunqint*q;11.voidfunintq[];voidfunqintq[];12.voidfunintq[M];voidfunqintq[M];13.635414.p++或++p或p=p+1或p+=1或p=1+p15.w[i−1]或*w+i−116.pc,pb或pb,pc17.pc,pa或pa,pc18.pb,pa或pa,pb19.220.2模拟试卷三答案
一、选择题(1~40题每个选项1分,41~50题每个选项2分,共60分)1.A2.C3.D4.C5.D6.D7.C8.D9.D10.A53911.A12.D13.D14.A15.A16.C17.C18.A19.B20.D21.B22.C23.D24.C25.A26.B27.D28.D29.A30.D31.A32.D33.D34.C35.A36.C37.C38.C39.D40.D41.C42.C43.B44.C45.C46.C47.B48.D49.D50.A
二、填空题(每空2分,共40分)1.顺序2.COPY*.TXTPRN或XCOPY*.TXTPRN3.COPYA:*.DATPRN4.MDA\USER\XMDA:X5.退出(或关闭)6.807.fp=fopenf.dat,rb;8.609.17777710.x==0||x==111.−112.*sn13.635414.p++或++p或p=p+1或p+=1或p=1+p15.3276816.y=117.y018.Fname,w19.exit020.Ch,fp2002年9月全国计算机等级考试二级(C语言)笔试真题答案
一、选择题(1~40题每个选项1分,41~50题每个选项2分,共60分)1C2A3B4B5C6A7D8D9D10D11A12D13B14A15C54016D17C18C19B20C21D22C23A24A25D26A27B28D29B30D31C32B33D34A35B36D37C38A39D40D41C42A43B44B45C46D47B48D49A50C
二、填空题(每空2分,共40分)1.【1】系统软件2.【2】CON或CON:3.【3】TCP/IP或者传输控制协议/网际协议4.【4】EXIT或者exit5.【5】二百万或者两百万或者2000000或者2百万或者200万或者20000006.【6】k,【7】*k7.【8】2008.【9】179.【10】X10.【11】322311.【12】/i或者*
1.0/i或者*1/i或者*
1.0/i或者/doublei12.【13】maxa[row][col],【14】minmax13.【15】*t,【16】*s-*t14.【17】10001015.【18】3516.【19】8017.【20】d
1.datrb2003年4月全国计算机等级考试二级(C语言)笔试真题答案
一、选择题(1~40题每个选项1分,41~50题每个选项2分,共60分)1.C2.C3.C4.C5.C6.B7.A8.D9.D10.C11.C12.C13.A14.B15.C16.D17.B18.D19.A20.C21.C22.B23.B24.D25.A26.C27.C28.D29.C30.C31.A32.C33.B34.C35.B36.B37.B38.C39.B40.C54141.A42.D43.A44.D45.A46.B47.C48.C49.B50.B
二、填空题(每空2分,共40分)1.字节2.AUTOEXEC.BAT3.COPY*.TXTPRN4.拖动5.图标或按钮6.
2.17.
6.68.Malloc11或mallocsizeofchar*119.Hello10.passwarm11.Void*p或void*pint*int*12.013.1014.Structst或ex15.”bi.dat”,”w”或“bi.dat”,”wt”或”bi.dat”,”w+t”16.517.418.P=j19.X[i][p]20.LineMaxx第16章答案【填空题】1.type*.txt2.mda:\user\data3.copyb:\bas\a*c:\abc4.autoexec5.copyjd
1.for+jd
2.fora:\jd
3.for【选择题】1.D2.B综合题答案略。