专升本计算机(数据库技术与程序设计语言)模拟试卷5
程序阅读题
1.在执行下列程序时,若从键盘输入BCD123xyz,则运行结果是________。
(注:表示按下回车键。)
#include
void main()
{
char ch;
while((ch=getchar())!=‘\n’)
{
if(oh>=‘A’&&ch<=‘Z’)
ch=ch+32;
else if(ch>=‘a’&&ch<=‘z’)
ch=ch=32;
printf(“%c”,ch);
}
}
bcd123XYZ
解析:程序的功能是将大写字母转换成与之对应的小写字母,将小写字母转换成与之对应的大写字母,数字不做处理。
填空题
2.结构化程序的三种结构是________、________、________。
顺序结构、选择结构、循环结构
解析:结构化程序设计的核心是算法设计,基本思想是采用自顶向下、逐步求精的设计方法和单入单出的控制结构。单入单出的控制结构是指每个模块内部均用顺序、选择、循环三种基本结构来描述,仅由这三种基本结构组成的程序称为结构化程序。
3.执行printf(“%d\n”,1+!2+(3<=4)+5/6+7%8);后的输出结果是________。
9
解析:本题中,表达式可化简为1+0+1+0+7,计算可得值为9。
4.设有定义int x=9,y=8;,则表达式x==y+1的值是________。
1
解析:由于+的优先级高于=,所以先计算y+l,其值为9,再计算x==9,其值为真,用1表示真,故整个表达式的值是1。
单选题
5.在C语言中,要求参加运算的数必须是整数的运算符是( )。(C)
A. /
B. *
C. %
D. =
解析:%用于模运算,即取余运算,运算符“%”的左右两端必须都是整型数据。
6.C语言提供的合法数据类型关键字是( )。(A)
A. float
B. Signed
C. Integer
D. Char
解析:C语言中的关键字都是小写的,故只有选项A合法。
7.定义了一维int型数组a[10]后,下列错误的引用是( )。(B)
A. a[0]=1;
B. a[10]=2;
C. a[0]=5*2;
D. a[1]:a[2]*a[0];
解析:数组下标从0开始,本题中数组的长度为10,所以最大的下标是9,没有a[10]。
8.设C语言中,int类型数据占2个字节,float类型数据占( )个字节。(D)
A. 1
B. 2
C. 8
D. 4
解析:C语言规定,float类型数据占4个字节。
9.已知各变量的类型说明如下:
int k,a,b;
unsigned long w=5;
double x=1.42;
则下列不符合C语言语法的表达式是( )。(A)
A. x%(-3)
B. w+=-2
C. k=(a=2,b=3,a+b)
D. a+=a-=(b=4)*(a=3)
解析:取余运算符“%”的两边只能是整数,x是浮点数。
10.下列程序的执行结果是( )。
#include<stdio.h>
void main()
{
int x=2,y=3;
printf(“x=%%d,y=%%d\n”,x,y);
}(D)
A. x=%2,y=%3
B. x=%%d,y=%%d
C. x=2,y=3
D. x=%d,y=%d
解析:在printf函数中,格式控制符是以%开头的一个或多个字符,若要显示%,则必须在格式控制字符串中使用%%来代替单个%。本题中,格式控制字符串中使用的是%%,所以输出结果应为x=%d,y=%d,故选项D正确。
11.设int n=3;,则表达式++n,n的结果是( )。(C)
A. 2
B. 3
C. 4
D. 5
解析:本题中的表达式++n,n为逗号表达式,计算过程:第一个表达式++n的值为4,因为自增运算符++是前置运算,先自增后运算;第二个表达式n的值为4。因此,逗号表达式的值即为最后一个表达式的值4。
12.下列说法正确的是( )。(B)
A. a是实型变量,C语言允许进行以下赋值a=10,因此可以说,实型变量中允许存放整型值
B. 在赋值表达式中,赋值号右边既可以是变量,也可以是任意表达式
C. 执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0
D. 已有a=3,b=5,执行了表达式a=b,b=a之后,a的值为5,b的值为3
解析:选项A,实型变量在存放整型数值时,数值会自动转换成实型数据进行存储;选项C,a=b,是将b的值赋值到a中,而b的值没有改变;选项D,执行结果是a和b的值都为5。
13.若变量已正确定义并赋值,下列符合C语言语法的表达式是( )。(B)
A. 2=a
B. a=7+b+c,a++
C. int 12.3%4
D. a=a+7=a+b
解析:赋值运算符“=”的左边必须是变量,不能是常量或者表达式,故A、D两项不正确。选项C,取余运算符“%”的两边只能是整型数据,故不正确。
14.下列( )是正确的常量。(D)
A. E-5
B. 1E5.1
C. ‘a12’
D. 32766L
解析:实型常量中,E之前必须有数字,E之后的阶码必须为整数,故A、B两项错误;字符串变量应用双引号,故选项C错误;选项D,32766L表示正确,是一个长整型常量。
15.假设()与{}里都是正确的,则下列格式属于循环嵌套的是( )。
B
解析:循环嵌套就是一个循环内又完整地包含了另一个循环。if语句、switch语句实现的是选择结构,不是循环。while语句、do—while语句、for语句实现的是循环结构,可以相互嵌套。
16.设有程序段如下:
int k=10;
while(k=0)k=k-1;
下列说法正确的是( )。(C)
A. while循环执行10次
B. 循环是无限循环
C. 循环体语句一次也不执行
D. 循环体
本文档预览:3500字符,共5753字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载