C语言练习题(第一套)

C语言练习题(第一套)

ID:40527434

大小:44.00 KB

页数:7页

时间:2019-08-04

C语言练习题(第一套)_第1页
C语言练习题(第一套)_第2页
C语言练习题(第一套)_第3页
C语言练习题(第一套)_第4页
C语言练习题(第一套)_第5页
资源描述:

《C语言练习题(第一套)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C语言程序设计试题(第一套)C语言程序设计试题(第一套)一、选择题,下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请选择。(1)若变量已正确定义并赋值,下面符合C语言语法的表达式是(B)A)a:=b+1B)a=b=c+2C)int18.5%3D)a=a+7=c+b讲解:用排除法。A)中包含一个不合法的运算符“:=”,错;C)明显错;D)可分解为两个表达式:a+7=c+b和a=a+7,其中第一个是错的,因为C规定:赋值号的左面只能是单个变量,不能是表达式或常量等。因此,正确答案是B),它实际上相当于:a=(b=c+2),进而可分解为两个表达

2、式:b=c+2和a=b。(2)C语言中运算对象必须是整型的运算符是(A)A)%=B)/C)=D)〈=讲解:正确答案是A)。C规定:取余运算符的运算对象必须是整型,复合运算符“%=”中包含%运算,它的运算对象也必须是整型。(3)若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(C)A)1B)2C)2.0D)2.5讲解:该题的解答请参阅“整数除法的注意事项”和“逗号表达式”。正确答案是C)。(4)若变量a、i已正确定义,且i已正确赋值,合法的语句是(B)A)a==1B)++i;C)a=a++=5;D)a=int(i);讲解:(A)中是一个

3、表达式,因为缺少分号,所以不是语句;(C)错误;(D)若改为a=(int)i;则是合法的语句,小括号写错了位置,从另一个角度理解,(D)的写法应该是一个函数调用语句,函数名是int,小括号中的i是实参,这样的话,函数名int又是不合法的,因为C规定:用户标识符(包括函数名)不能是关键字,而int是一个关键字。所以,正确答案是(B),它相当于语句i=i+1;(5)若有以下程序段,intc1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是(B)A)0B)0.5C)1D)2讲解:因为运算表达式中有一个浮点型数据1.0,所以,运算结果应该也是

4、一个浮点类型,只有(B)符合这一条件,仅根据这一点就可以确定(B)是正确答案。该语句的执行过程(1)先将c2的值2转换为2.0;(2)计算1.0/2.0,得到中间结果0.5;(3)将c1的值1转换为1.0;(4)计算0.5*1.0,得到结果0.5;(5)将0.5赋值给变量c3。(6)有如下程序main(){inty=3,x=3,z=1;printf(“%d%d”,(++x,y++),z+2);}运行该程序的输出结果是(D)A)34B)42C)43D)337C语言程序设计试题(第一套)讲解:printf函数输出两个表达式的值,第一个是(++x,y++),

5、它是逗号表达式,它的值应该就是y++的值3(关于逗号表达式,请参阅课本中的一个专题的内容);第二个表达式是z+2,它的值为3。所以,正确答案是(D)。(7)能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是A)a>=10ora<=0B)a>=0

6、a<=10C)a>=10&&a<=0D)a>=10‖a<=0讲解:题目要求很明确,两个关系式"a≥10"和"a≤0"之间是“或”的关系,C语言中,逻辑“或”用运算符“

7、

8、”,四个选项中只有(D)满足这一条件,它就是正确答案。(8)有如下程序main(){intx=1,a=0,b=0;switch(x){ca

9、se0:b++;case1:a++;case2:a++;b++;}printf(“a=%d,b=%d”,a,b);}该程序的输出结果是A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2讲解:该题目的关键是要搞清楚该程序执行了哪几条语句。由于x的值等于1,所以switch结构中,程序从case1后面的语句开始执行,又因为case1后面的语句没有以break结束,所以程序要继续往下执行case2后面的语句。所以,该程序共执行了这三条语句:a++;a++;b++;因此,变量a和b最后的值应该为2和1,正确答案为(A)。(9)有如下程序m

10、ain(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf(“%f”,y);}该程序的输出结果是A)0.000000B)0.250000C)0.500000D)1.000000讲解:该题目测验你对if...elseif结构的理解,比较简单。x的值满足x<10.0的关系,所以程序将执行y=1.0/x;语句,y的值应该等于0.5。最后,用printf函数输出时,%f的输出格式为小数点后保留6位,所以,(C)是正确答案。(10)有如下程序main()inta=2,b=-1,

11、c=2;   if(a

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。