级程序设计基础习题参考解答教师用.docx
- 文档编号:25207826
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:61
- 大小:39.07KB
级程序设计基础习题参考解答教师用.docx
《级程序设计基础习题参考解答教师用.docx》由会员分享,可在线阅读,更多相关《级程序设计基础习题参考解答教师用.docx(61页珍藏版)》请在冰豆网上搜索。
级程序设计基础习题参考解答教师用
计算机程序设计基础__基础知识
(一)
一、选择题
1、C++源程序文件的默认扩展名为()。
(A)cpp(B)exe
(C)obj(D)lik
解:
选A
2、由C++源程序文件编译而成的目标文件的默认扩展名为()。
(A)cpp(B)exe
(C)obj(D)lik
解:
选C
3、由C++目标文件连接而成的可执行文件的默认扩展名为()。
(A)cpp(B)exe
(C)obj(D)lik
解:
选B
4、编写C++程序一般需经过的几个步骤依次是()。
(A)编译、编辑、连接、调试(B)编辑、编译、连接、调试
(C)编译、调试、编辑、连接(D)编辑、调试、编译、连接
解:
选B
5、程序中主函数的名字为()。
(A)main(B)MAIN
(C)Main(D)任意标识符
解:
选A
6、下面四个选项中,均是不合法的用户标识符的选项的是()。
(A)Ap_odo(B)floatlao_A
(C)b-agotoint(D)_123tempINT
解:
选C。
因为b-a中用到减号,goto,int是C++保留的关键字。
在A选项中,A,p_o是合法的用户标识符;在B选项中,lao与_A是合法的用户标识符;在D选项,_123与temp也是合法的用户标识符。
7、下列变量名中合法的是()。
(A)B)C)Tom(B)3a66
(C)_6a7b(D)$ABC
解:
选C。
因为它由字母、数字与下划线组成的字符序列,且以下划线开头。
在A选项中,变量名用到了)号;在B选项中,以数字3开头;在D选项中,以美元符号$开头。
8、存储以下数据,占用存储字节最多的是()。
(A)0(B)‘0’
(C)“0”(D)0.0
解:
选D。
该数据至少是浮点型或双精度型,它占用存储字节数分别为4字节或8字节。
在A选项中,整数0占用4字节;在B选项中,字符0占用1字节;在C选项中,它是字符数组的赋值,应占用2字节。
9、在C++语言中,字符型数据在内存中的存储形式是()。
(A)补码(B)反码
(C)原码(D)ASCII码
解:
选D。
字符型数据在内存中所存储的值其实是一个正整数值,该值是其ASCII码值。
所以在C++中,字符型数据可与整型数据进行运算。
10、若有说明语句:
charc=’\072’;则变量c()。
(A)包含1个字符(B)包含2个字符
(C)包含3个字符(D)说明不合法,变量的值不确定
解:
选A。
因为、\072是转义字符,表示;号。
二、填空题
1、C++头文件和源程序文件的扩展名分别为和。
解:
填h和cpp。
2、C++语言规定,标识符只能由、、三种字符组成,而且第一个字符必须是或。
解:
填字母、数字、下划线(无顺序之分),填字母、下划线(无顺序之分)。
3、一条表达式语句必须以作为结束符。
解:
填;(即分号)。
4、用于从键盘上为变量输入值的标准输入流对象是;用于输出表达式值的标准输出流对象是。
解:
填cin,cout。
5、在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以标识符开始的预处理命令。
解:
填include。
计算机程序设计基础__基础知识
(二)
一、单选题
1、下列哪一个是C++语言中合法的变量()。
(A)8ZSe(B)±A0
(C)X0_2(D)’x0’
解:
选C。
因为A选项,数字8打头,B选项中,±打头,C选项中,‘打头,这都是C++变量命名所不允许的。
2、已知ch是字符型变量,下面不正确的赋值语句是()。
(A)ch='a+b'(B)ch='\0'
(C)ch='7'+'9'(D)ch=5+9
解:
选A。
3、下列浮点数的表示中不正确的是()。
(A)223.(B)719E22
(C)e23(D)12e2
解:
选C。
因为e或E的两边必须带上一位数字。
4、下列不正确的转义字符是()。
(A)'\\'(B)‘\"’
(C)'074'(D)'\0'
解:
选C。
074取字符时,仅取了4。
5、在C语言中,合法的字符常量是()。
(A)'\084'(B)'\x43'
(C)'ab'(D)"\0"
解:
选A。
A选项表示4,而C选项仅取了b,D选项是字符串,B似乎也行。
6、下列变量定义中合法的是()。
(A)double_a=1.le-1;(B)doubleb=1+5e2.5;
(C)doubledo=2e3(D)double2_and=1-e-3;
解:
选A。
B选项错在:
变量初始化不能用算术表达式。
C选项错在:
do关键词不能作变量名。
D选项错在:
变量名应字母与下划线打头。
7、已知ch是字符变量,正确的赋值语句是()。
(A)ch=‘123’(B)ch=’\xff’
(C)ch=’\08’(D)ch=”\”
解:
选C。
A选项只能将3赋给ch,并不能将123赋给ch。
B选项中的\xff并非转义字符。
D选项是为字符串变量赋值。
8、若x、i、j和k都是int型变量,则计算表达式x=(i=4,j=15,k=32)后,x的值为()。
(A)4(B)16
(C)32(D)52
解:
选C。
先算括号,它是逗号表达式,值取最后的一个,即k=32。
然后将k的值32赋给x,从而x的值为32。
9、单精度数x=3.0,y=4.0,下列表达式中y的值为9.0的是()。
(A)y/=x*27/4(B)y+=x+2.0
(C)y-=x+8.0(D)y*=x-3.0
解:
选B。
选做x+2.0=3.0+2.0=5.0,再作y=y+5.0=4.0+5.0=9.0。
A选项的值为0.197531,C选项的值为-7,D选项的值为0。
10、有整型变量x,单精度变量y=5.5,表达式:
x=(float)(y*3+((int)y%4))执行后,x的值为()。
(A)17(B)17.5
(C)16.5(D)16
解:
选A。
求解过程如下:
(int)y=5(int)y%4=5%4=1,y*3=5.5*3=16.5,16.5+1=17.5,(float)17.5=17.5,由于x是整型变量,故只能将17赋给了x。
二、填空题
1、一个C语言程序一般由若干个函数构成的,程序中至少应包含一个。
解:
填main。
2、在C语言中,八进制整常量以开头、十六进制整常量以开头。
解:
填数字0开头,填ox或OX
3、‘x’在内存中占字节,”x”在内存中占字节,”/101”在内存中占。
解:
填1,再填2,最后填1。
4、若a是int型变量,且a的初值为6,则计算表达式a+=a-=a*a后a的值为。
解:
填-60,计算过程如下:
注意到赋值运算符结合次序是从右至左,有:
a*a=36,再执行a-=36,则a=6-36=-30,再执行a+=-30,即a=-30-30=-60。
5、设inta=2,b=3;floatx=3.5,y=2.5;表达式(float)(a+b)/2+(int)x%(int)y的值是。
解:
填3.5,计算过程如下:
(float)(a+b)=5.0,(int)x=3,(int)y=2
5.0/2+3%2=2.5+1=3.5
6、设intx=1,y=1;表达式(!
x||y--)的值是。
解:
填1,计算过程如下:
!
x=0,y—仍使y=1,再做0||1=1之后,y=0。
7、定义:
inta=10,b=9,c=8;顺序执行语句:
c=(a-=(b-5));c=(a%11)+(b=3);后变量c的值是;变量b的值是。
解:
填9,填3,计算过程如下:
b-5=9-5=4,a-=4=10-4=6,c=6
a%11=6%11=6,b=3,c=6+3=9
故最后c=9,b=3。
8、设有intx=11;则表达式(x++*1/3)的值是。
解:
填3,计算过程如下:
x++仍使x=11,11/3=3,并使x=12。
计算机程序设计基础__基础知识(三)
一、单选题
1、下列优先级最低的算符是()。
(A)&&(B)+(C)||(D)=
解:
选D。
&&与||为8级运算符,+为4级运算符,而=为10级运算符。
2、以下符合C++语言语法的赋值表达式是()。
(A)d=9+e+f=d+9(B)d=9+e,f=d+9
(C)d=(9+e,e++,d+9)(D)d=9+e++=d+7
解:
选C。
A选项错在:
赋值运算的左值应为单变量,不能是表达式。
B选项错在:
它是逗号表达式,不是赋值表达式。
D选项错在:
e++是运算表达式,而非变量,不能进行赋值运算。
3、已知字母A的ASCII码为十进制数65,且c2为字符型,执行语句c2=‘A’+’6’-‘3’;后c2的十进制ASCII码值为()。
(A)67(B)68(C)69(D)不确定的值
解:
选B,其计算过程是:
65+3=68
4、设有说明:
charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()。
(A)float(B)char(C)int(D)double
解:
选D。
类型转换遵循由低向高。
char->int,float->double.
5、假设在程序中a、b、c均被定义成整型,所赋的值都大于1,则下列能正确表示代数式
的表达式是()。
(A)1.0/a*b*c(B)1/(a*b*c)
(C)1/a/b/(float)c(D)1.0/a/b/c
解:
选B。
A,C,D都改为了浮点数相除,B是整数相除。
6、已知inti,a;执行语句“i=(a=2*3,a*5),a+6;”后,变量i的值是()。
(A)6(B)12(C)30(D)36
解:
选C。
逗号表达式的执行次序是从左至右,于是
i=(a=6,6*5)=30,再执行a+6=6+6=12
执行完后,i=30,但该表达式的值为12。
7、C++语言中,要求运算数必须是整型的运算符是()。
(A)%(B)/(C)<(D)!
解:
选A。
8、以下正确地定义整型变量a,b和c并为它们都赋初值5的语句是()。
(A)inta=b=c=5;(B)inta,b,c=5;
(C)inta=5,b=5,c=5;(D)a=b=c=5;
解:
选C。
A选项与D选项应改为:
inta,b,c;a=b=c=5;而B选项仅为c赋了初值5,a,b均未赋初值。
9、以下变量均为int类型,则值不等于7的表达式是()。
(A)(x=y=6,x+y,x+1)(B)(x=y=6,x+y,y+1)
(C)(x=6,x+1,y=6,x+y)(D)(y=6,y+1,x=y,x+1)
解:
选C。
它的运算过程如下:
x=6,x+1=6+1=7,y=6,x+y=6+6=12,其表达式最后的值为12。
A、B和D选项的值均为7。
10、设有inta=1,b=2,c=3,d=4,m=2,n=2;执行语句:
(m=a>b)&&(n=d>c);后n的值为()。
(A)1(B)2(C)3(D)0
解:
选B,其运算过程为:
先执行括号,由左至右次序,于是
a>b为1>2,值为0,故m=0
本应执行第二个括号,即d>c为4>3,值为1,故n=1。
但实际上,由于0与任何值作与运算&&,其结果均为0,于是第二个括号内的运算可以不必进行。
因此,n=2而不是n=1。
二、填空题
1、当inta=1,b=2,c=3;时,则表达式a+b>0&&b==c的值是。
解:
填0,其计算过程如下:
由于关系运算的优先级高于逻辑运算,故上式等价于(a+b>0)&&(b==c)
a+b>0,即1+2=3>0,故值为1。
b==c,即2==3,故值为0。
1&&0=0
2、若x是int类型变量,则执行下列语句:
x=7;x+=x-=x+x;后x的值是。
解:
填-14,其计算过程如下:
赋值运算符的次序是由右至左,x+x=14,x-=14,再执行x=x-14=7-14=-7,最后执行x+=-7,即x=x+(-7)=-7-7=-14.
3、若变量a,b和c是int类型,以下语句借助int类型中间变量t把a,b,c交换,如交换前:
a=10,b=20,c=30,交换后:
a=20,b=30,c=10,则交换语句为;a=b;b=c;;
解:
填t=a,再填c=t。
这是一种非标准的变量交换。
标准的交换是两两交换,即先作a与b的交换,然后作b与c的交换,其语名为:
t=a;a=b;b=t;
t=b;b=c;c=t;
4、设inta=2,b=4,c=1,x=0,y=0;执行语句a||(x=b)&&(y=c);后x的值为,y的值为。
解:
填0,再填0,其计算过程与理由如下:
2||(x=b)&&(y=c),由于2非零,它与后面表达式作||或运算,其值自然是非零,后面的表达式不需要进行运算,因此,x,y的值仍为0。
5、判断字符型变量c为大写字母的正确表达式是。
解:
填c>=65&&c<=90,或填c>=’A’&&c<=’Z’。
A至Z的ASCII码的值为:
65-90;a至z的ASCII码的值为:
97-122。
可见,大写字母换小写字母,应将码值加32。
而小写字母换大写字母,应将码值减32。
计算机程序设计基础__控制结构
(一)
一、单选题
1、下列程序的输出结果是()。
#include
voidmain()
{doubled=3.2;intx,y;
x=1.2;y=(x+3.8)/5.0;
cout< } (A)3(B)3.2(C)0(D)3.07 解: 选C。 其计算过程如下: 由于x为整型变量,x=1.2,使x=1,y=(1+3.8)/5.0=4.8/5.0=0.98,由于y也是整型变量,y=0,从而d*y=3.2*0.0=0,输出0。 2.下列程序执行后的输出结果是()。 #include voidmain() {doubled;floatf; longl;inti; i=f=l=d=20/3; cout< cout< } (A)6,6,6,6(B)6,6,6.7,6.7 (C)6,6,6,6.7(D)6,6,6.7,6 解: 选A。 其计算过程如下: 20/3=6,故d=6.0,l=6,f=6.0,i=6,故输出结果为6,6,6,6。 3、下面程序的输出是()。 #include voidmain() { inta=-1,b=4,k; k=(a++<=0)&&(! (b--<=0)); cout< } (A)003(B)012 (C)103(D)112 解: 选C。 其计算过程如下: (1)a++<0,即-1<0,值为1且a=0 (2)! (b--<=0),即! (4<=0)=1且b=3 (3)k=1&&1=1 (4)输出103 4、设intx=1,y=3,则语句x+=y;y=x-y;x-=y;的功能是()。 (A)把x和y按从大到小排列(B)把x和y按从小到大排列 (C)无确定结果(D)交换x和y中的值 解: 输出D。 其计算过程如下: x=x+y使x存储x+y的值,而y=x-y=(x+y)-y=x,使y中存储x值,而x=x-y=(x+y)-x=y,即使y中存储了y的值。 故该语句的功能是实现交换x和y中的值。 5、以下程序的输出结果是()。 #include voidmain() {inta,b,c=246; a=c/100%9;b=(-1)&&(-1);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 基础 习题 参考 解答 教师