您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 计算机等级考试c语言程序设计习题
第1章C语言程序设计概述一、选择题1.下列关于计算机语言的叙述中,正确的是_______。A.在计算机语言中,只有机器语言属于低级语言B.高级语言的源程序可以被计算机直接执行C.C语言属于高级语言D.机器语言是与所有机器无关的语言2.源程序TEST.C经编译产生的目标文件和连接后产生的可执行文件是_______。A.TEST.BAK和TEST.OBJB.TEST.OBJ和TEST.EXEC.TEST.EXE和TEST.CD.TEST.BAK和TEST.EXE3.一个C程序的执行是从_______。A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束4.以下叙述正确的是_______。A.在C程序中,main函数必须位于程序的最前面B.程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误5.以下叙述不正确的是_______。A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.在C程序中,注释说明只能位于一条语句的后面D.C程序的基本组成单位是函数6.一个C语言程序是由_______。A.一个主程序和若干子程序组成B.函数组成C.若干过程组成D.若干子程序组成7.关于C语言程序书写规则说法中正确的是_______。A.程序语句必须占一行B.不区分大小写C.每行必须有行号D.每条语句用分号结束8.下面关于算法的说法,错误的是_______。A.算法必须有输出,但不一定有输入B.算法必须在计算机上用某种语言实现C.算法必须在有限步执行后能结束D.算法的每一步骤必须有确切的定义19.结构化程序设计规定的3种基本控制结构是_______。A.顺序、选择和转向B.层次、网状和循环C.模块、选择和循环D.顺序、选择和循环10.结构化程序由三种基本结构组成,三种基本结构组成的算法_______。A.可以完成任何复杂的任务B.只能完成部分复杂的任务C.只能完成符合结构化的任务D.只能完成一些简单的任务二、填空题1.C源程序的基本单位是________,一个C源程序中必须包括一个________。2.在一个C源程序中,注释部分两侧的分界符分别为________和________。3.C语言源程序文件的后缀是________;经过编译后,生成文件的后缀是________;经过连接后,生成的文件的后缀是________。4.结构化程序由________、________、________,3种基本结构组成。三、编程题1.编写一个程序,用2个printf()语句分别输出学校名称和自己的姓名。2.编写一个程序,用1个printf()语句输出学校名称和自己的姓名。2第2章数据类型及其运算一、选择题1.下面四个选项中,均是不合法的用户标识符的选项的是____C___。A.Ap_odoB.floatlao_AC.b-agotointD._123tempINT2.以下选项中可以作为C语言中合法整数的是___C____。A.10110BB.0386C.0XffaD.x2a23.以下选项中合法的实型常数是__C_____。A.5E2.0B.E-3C.2E0D.1.3E4.以下选项中可作为C语言合法常量的是__A_____。A.-80B.-080C.-8e1.0D.-80.0e5.下面四个选项中,均是合法转义字符的选项是__B___。A.'\''\\''\n'B.'\'''\017''\t'C.'\018''\f''\xab'D.'\\0''\101''x1f'6.下面不正确的字符串常量是__A_____。A.'abc'B.12’12C.0D.7.以下选项中不属于C语言的类型的是____D___。A.signedshortintB.unsignedlongintC.unsignedintD.longshort8.在C语言中,要求运算数必须是整型的运算符是___D____。A./B.++C.!=D.%9.以下运算符中优先级最低的是___A____,以下运算符中优先级最高的是__B_____。A.&&B.=C.||D.==10.若x=2,y=3,则x&&y的结果是___B____。A.0B.1C.2D.311.若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为__C_____。A.4B.16C.32D.5212.若有定义:inta=7;floatx=2.5,y=4.7;,则表达式x+a%3*(int)(x+y)%2/4的值是__A_____。A.2.500000B.2.750000C.3.500000D.0.00000013.若有以下类型说明语句:charw;intx;floaty;doublez;,则表达式w*x+z-y的结果为_D______类型。A.floatB.charC.intD.double14.已有定义:intx=3,y=4,z=5;则表达式!(x+y)+z–1&&y+z/2的值是__D_____。A.6B.0C.2D.115.以下选项中非法的表达式是___D____。A.0=x100B.i=j==0C.(char)(65+3)D.x+1=x+116.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=ab)&&(n=cd)运算后,n的值为___C____。3A.0B.1C.2D.317.若变量c为char类型,能正确判断出c为小写字母的表达式是___D____。A.'a'=c='z'B.(c='a')||(c='z')C.('a'=c)and('z'=c)D.(c='a')&&(c='z')18.若x和y代表整型数,以下表达式中不能正确表示数学关系|x―y|10的是____C___。A.abs(x–y)10B.x–y-10&&x–y10C.!(x–y)-10||!(y–x)10D.(x–y)*(x–y)100二、填空题1.C语言中的标识符只能由三种字符组成,它们是_______,_______和_______。2.在C语言中(以32位PC机为例),一个char型数据在内存中所占的字节数为_______,一个int型数据在内存中所占的字节数为_______,一个float型数据在内存中所占的字节数为_______,一个double型数据在内存中所占的字节数为_______。3.有以下定义intm=5,y=2;则计算表达式y+=y-=m*=y后的y值是_______。4.若定义:inta=2,b=3;floatx=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值是_______。5.x和n均为int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为_______。6.设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。7.a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为_______,b值为_______,c值为_______。8.a是int型变量,且a的初值为6,则计算表达式a+=a-=a*a后a的值为_______。9.设y是int型变量,请写出判断y为奇数的关系表达式_______。10.若a,b,c均为整型变量,则执行以下语句a=b=c=0;a++&&++b||c++;后,a的值为_______,b的值为_______,c的值为_______。三、程序阅读题1.下面程序的运行结果是__b_____。#includestdio.hintmain(){charm;m='B'+32;printf(%c\n,m);return0;}2.下面程序的运行结果是__0_____。#includestdio.hintmain(){intx=3,y=5;printf(%d\n,x/y);return0;}3.下面程序的运行结果是___0____。#includestdio.h4intmain(){intm=0xabc,n=0xabc;m-=n;printf(%x\n,m);return0;}4.下面程序的运行结果是__10,2_____。#includestdio.hintmain(){intx=10,y=3;printf(%d,%d\n,x++,--y);return0;}5.下面程序的运行结果是_9,10,9,10______。#includestdio.hintmain(){inti,j;i=8;j=10;printf(%d,%d,%d,%d\n,i,j,++i,j++);return0;}6.下面程序的运行结果是____3,1,0,0___。#includestdio.hintmain(){inta=1,b=2,c=3;printf(%d,%d,%d,%d\n,a=b=c,a=b==c,a==(b=c),a==(b==c));return0;}7.下面程序的运行结果是__3,20,30,1_____。#includestdio.hintmain(){inta=2,b=20,c=30,d;d=++a=10||b--=20||c++;printf(%d,%d,%d,%d\n,a,b,c,d);return0;}5第3章语句与输入输出一、选择题1.设有定义:longx=123456L;,则以下能够正确输出变量x值的语句是_______。A.printf(x=%d\n,x);B.printf(x=%ld\n,x);C.printf(x=%8dL\n,x);D.printf(x=%LD\n,x);2.若有以下程序段intm=0xabc,n=0xabc;m-=n;printf(%X\n,m);执行后输出结果是_______。A.0X0B.0x0C.0D.0XABC3.已知chara='\103';则语句printf(%3d,a);执行后的输出结果为_______。A.67B.'C'C.67D.1034.已知a、b、c为int类型,执行语句:scanf(a=%d,b=%d,c=%d,&a,&b,&c);,若要使得a为1,b为2,c为3。则以下选项中正确的输入形式是_______。A.a=1B.1,2,3C.a=1,b=2,c=3D.123b=2c=35.已知i、j、k为int型变量,若从键盘输入:1,2,3↙,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是_______。A.scanf(%2d%2d%2d,&i,&j,&k);B.scanf(%d%d%d,&i,&j,&k);C.scanf(%d,%d,%d,&i,&j,&k);D.scanf(i=%d,j=%d,k=%d,&i,&j,&k);6.x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是_______。A.INPUTx、y、z;B.scanf(%d,%d,%d,&x,&y,&z);C.scanf(%d,%d,%d,x,y,z);D.read(%d,%d,%d,&x,&y,&z);7.若有inta;floatb;scanf(%d,%f,&a,&b);使a、b的值分别为30和5.5,则正确的输入是_______。A.305.5B.30,5.5C.a=30,b=5.5D.a=30b=5.58.根据以下定义语句和数据的输入方式,scanf语句的正确形式应为_______。已有定义:floatf1,f2;数据的输入方式:4.52↙3.5↙A.scanf(%f,%f,&f1,&f2);B.scanf(%f%f,&f1,&f2);C.scanf(%3.2f%2.1f,&f1,&f2);D.scanf(%3
本文标题:计算机等级考试c语言程序设计习题
链接地址:https://www.777doc.com/doc-5742704 .html