20春学期(1709、1803、1809、1903、1909、2003)《程序设计基础(上)》在线作业
试卷总分:100 得分:100
一、单选题 (共 25 道试题,共 50 分)
1.下面关于循环语句的叙述中,正确的是##。
A.无论哪种循环,都可以从循环体内转移到循环体外
B.for循环只能用于循环次数已知的情况
C.for循环体内不能出现while语句
D.for循环与while循环一样,都是先执行循环体后判断条件
2.下面说法中正确的是( )。
A.空语句是什么也不输出的语句
B.空语句就是一个空行
C.复合语句逻辑上是一条语句
D.复合语句就是多条语句
3.以下不正确的if语句形式是##。
A.if(x<y) else cin>>y; { x++; y++;}
B.if(x>y);
C.if(x=0)x+=y;
D.if(X!=y)cin>>x
4.32位的计算机系统指的是计算机的( )是32位。
A.硬盘
B.字长
C.内存
D.位长
5.下列有关内联函数的描述中,错误的是##。
A.在编译程序时,系统会直接将调用内联函数的地方用内联函数中的语句体做等价替换,从而省去运行程序时函数调用所额外消耗的时间
B.内联函数必须是一个小函数,不能包含循环、switch等语句
C.内联函数必须在定义处加上inline关键字,否则就是普通的函数
D.一个函数中如果包含循环、switch等语句,则将其定义为内联函数时编译器会报错
6.已知“char *s=”mybook”;”,则下列语句正确的是##。
A.以上均不正确
B.strcpy(s,”hello”);
C.strcat(s, “hello”);
D.s=”hello”;
7.在一个非零的二进制数后增加一个0后的数是原来的( )倍。
A.4倍
B.3倍
C.2倍
D.1倍
8.在C++中,函数原型声明中可以省略##。
A.形参类型
B.形参名
C.函数类型
D.函数名
9.计算机内部采用的数制是( )。
A.十进制
B.十六进制
C.八进制
D.二进制
10.如果需要一个变量来记录函数的调用次数,那么这个变量不能定义为##。
A.静态局部变量
B.静态全局变量
C.局部变量
D.全局变量
11.下列个数值中,最大的数是( )。
A.(174)8
B.7DH
C.123
D.1111100B
12.若m、n为整型,x为实型,ch为字符型,下列赋值语句中正确的是( )。
A.x=(m+1)++;
B.m=x%n;
C.m+n=x;
D.m=ch+n;
13.计算机唯一可以读懂的语言就是计算机的指令,叫做机器语言,被称为( )程序设计语言。
A.高级
B.特级
C.低级
D.中级
14.C++规定,else与##相匹配。
A.同一行上的if
B.同一列的if
C.之后最近的if
D.之前最近的if
15.已知x=3、y=5,则函数调用语句“fun(2*y-1,(++x,y))”中第2个实参的值为##。
A.9
B.5
C.4
D.3
16.运算符优先级按由高到低顺序排列正确的是( )。
A.||,!=,%,=
B.=,||,!=,%
C.=,%,||,!=
D.%,!=,||,=
17.( )是指设计、编制、调试程序的方法和过程,是寻找算法并用计算机能够理解的语言表达出来的一种活动。
A.编程
B.算法
C.程序设计
D.程序
18.已知”int *p; fun(p);”,其中,函数fun没有返回值,且其形参定义为引用调用方式,则下列给出的fun函数原型中正确的是##。
A.void fun(int[] &a);
B.void fun(int *&a);
C.void fun(int &a[]);
D.void fun(int &*a);
19.已知“char s[][10]={“Microsoft”,”Visual”,”C++”};”,则语句“cout<<s[2];”会在屏幕上输出##。
A.i
B.c
C.Visual
D.C++
20.设i,j,k都是变量,下面不正确的赋值表达式是( )。
A.i=j=k
B.i=j==k
C.i+j=k
D.i++
21.下列函数声明中,为重载函数的一组是##。
A.void fun(int); void fun(double=5.0);
B.void fun(int); int fun(int, int = 3);
C.void fun(int); int fun(int=5);
D.int f1(int); int f2(int, int);
22.( )是将所设计的算法变成计算机能够运行的代码的过程。
A.编程
B.算法
C.程序设计
D.程序
23.在C++中,函数体是由一对( )括起来的部分。
A.、[、]
B.{、}
C.(、)
D.
24.不是C++中空白字符的是( )。
A.空格
B.回车
C.制表符
D.//
25.下面定义的一维字符型数组中,存储的数据不是字符串的为##。
A.char s[]={‘a’, ‘b’, ‘c’};
B.char s[]={‘a’, ‘b’, ‘c’, ‘\0’};
C.char s[]=”abc”;
D.char s[20]=”abc”;
二、判断题 (共 25 道试题,共 50 分)
26.关系表达式值的数据类型为逻辑型。
27.返回引用的函数中return后面可以是一个全局变量、静态全局变量或静态局部变量,但不可以是局部变量。
28.表达式“x+1>y-2”是算数表达式。
29.函数返回的指针可以是全局变量、静态全局变量或静态局部变量的地址,但不可以是局部变量的地址。
30.引用的声明形式为: 数据类型 &引用名 = 变量名; “&”是取地址运算符、作用于引用名,表示紧随其后的是一个引用。
31.对于二维数据的存储问题,只能使用C++提供的二维数组。
32.只有带返回值的函数调用才能作为操作数参与其他运算。
33.计算机程序是使用计算机程序语言精确描述的实现模型,它的作用是指示计算机进行必要的计算和数据处理从而帮助我们解决特定的问题。
34.自定义函数的函数声明,通常将一个源文件中定义的所有函数的函数声明放在一个对应的头文件中。
35.设计迭代算法,要先要确定需要重复的操作或操作集合,然后确定需要进行多少次这样的循环。
36.已知p是一个int型指针变量,则语句“*p=10;”中的“*”是取地址运算符。
37.语句“char s[10] = “abc”; strcpy(s, “def”);”可以正常运行。
38.已知“int a[]={1,2,3}; const int *p=a;”,则语句“*p=5;”会将元素a[0]的值赋为5
39.当调用一个函数时,系统会将当前函数的运行状态保存起来,然后再去执行被调用的函数;当被调用的函数执行完毕后,系统会将刚才保存的运行状态恢复,继续执行函数调用后面的运算。
40.if语句中的()不能缺少,只能是逻辑类型的表达式。
41.一个C++程序一般由多个函数组成。这些函数只能是用户根据需要自己编写的函数——用户自定义函数。
42.具有不同作用域的变量可以同名。
43.字符型数组就是一个字符串。
44.只有返回引用的函数可以作为赋值语句的左值。
45.在编写大规模程序时,通常不采用多文件结构。
46.if语句的执行过程是:首先计算的值,如果其值为“true”(非0),表示满足某种条件,执行,否则,表示不满足某种条件,不执行而直接执行分支语句后下面的语句。
47.逻辑运算符的优先级从高到低分别是逻辑非、逻辑或和逻辑与。
48.函数的函数头包括和。
49.“cout<<“大家好!”;”是输出语句,语句的中“<<”叫提取运算符,不能省略。
50.二维数组元素的和都是从0开始的。