重庆科技大学计算机专业期末考试试卷
一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,请将选定的答案填涂在答题纸的相应位置上。)
1.以下关于变量的作用域说法正确的是( ) [单选题] *
A.全局变量的作用范围仅限于其所在的文件
B.形式参数的作用范围仅限于本函数(正确答案)
C.在函数内复合语句中定义的变量在本函数内有效
D.在不同函数中不能定义同名变量
2.调用fopen()函数时,不需要的信息是()。 [单选题] *
A.文件的打开方式
B.需要打开的文件名
C.文件指针
D.文件的大小(正确答案)
3.判断char型变量ch是否为大写字母的正确表达式是( ) [单选题] *
A.(ch>=’A’)&&(ch<='Z'(正确答案)
B.(‘A’<=ch)AND('Z'>=ch)
C.(ch>=’A’)&(ch<='Z'
D.’A’<=ch<=' Z'
4.已知:int a[10],*p=a,以下对数组元素的引用正确的是( )。 [单选题] *
A.*(p+2)(正确答案)
B.a[p]
C.p[a]
D.p+2
5.以下叙述中正确的为()。 [单选题] *
A.编译预处理命令只能位于源程序的开头
B.源程序中编译预处理命令以"#"开头(正确答案)
C.编译预处理就是对源程序进行初步的语法检查
D.编译预处理功能仅包括宏定义和文件包含
6.执行以下程序:int a;float b;scanf(“a=%d,b=%f”,&a,&b);,欲将28和2.8分别赋给a和b,正确的输入方法是() [单选题] *
A.28 2.8
B.a=28,b=2.8(正确答案)
C.a=28 b=2.8
D.28,2.8
7.下面程序的运行结果为()。
#include<stdio.h>
void main()
{
int n=0;
while(n++<=2);
printf("%d\n",n);
} [单选题] *
A.3
B.语法错误
C.4(正确答案)
D.2
8.设有定义:int k=0; 以下选项的四个表达式中与其他三个表达式的值不相同的是( ) [单选题] *
A.k+1
B.++k
C.k++(正确答案)
D.k+=1
9.已知 int a=5,b=6,c=3;,以下语句中执行结果与其他3个不同的是( ) [单选题] *
A.if(a>b) {c=a,a=b,b=c;}
B.if(a>b) c=a,a=b,b=c;
C.if(a>b) c=a;a=b;b=c;(正确答案)
D.if(a>b) {c=a;a=b;b=c;}
10.以下叙述错误的是( ) [单选题] *
A.函数调用可以作为一条独立的语句
B.若函数有返回值,则需要通过return语句
C.函数形参值的改变一定会影响到其所对应的实参(正确答案)
D.C程序必须由一个或多个函数组成
11.关于函数声明,不正确的说法是( ) [单选题] *
A.如果调用之前已在主调函数外部进行了函数声明,则调用时不必再做函数声明
B.如果函数定义出现在函数调用之前,则可以省略函数声明
C.自定义函数在调用之前 ,必须进行函数声明,否则编译会出错(正确答案)
D.标准库函数只需要包含相应的头文件即可,不需要再进行函数声明
12.已知:int i=5,j;j=f(&i);则以下函数f的返回值是( )
int f(int *p)
{
return *p;
} [单选题] *
A.不确定的值
B.形参p中存放的值
C.一个整数(正确答案)
D.形参p的地址值
13.以下程序段,while循环的执行次数是()。
#include<stdio.h>
void main()
{
int i=0;
while(i<9)
{
if(i<1) continue;
if(i==4) break;
i++;
}
} [单选题] *
A.8
B.3
C.2
D.死循环(正确答案)
14.已知:int i,j=7,*p=&i;则与i=j;等价的语句为()。 [单选题] *
A.i=*p;
B.i=&j;
C.i=* *p;
D.*p=j;(正确答案)
15.下列运算符优先级最高的是 ( ) [单选题] *
A.!=
B.
C.+(正确答案)
D.&&
16.合法的数组说明语句是( ) [单选题] *
A.int a[]="string";
B.char a="string";
C.char a[]={ '0', '1', '2', '3', '4', '5'};(正确答案)
D.int a[5]={0,1,2,3,4,5};
17.对赋值语句int b[10]={1,2,3,4,5};的正确理解是( ) [单选题] *
A.将5个初值依次赋给b[0]至b[4](正确答案)
B.将5个初值依次赋给b[5]至b[10];
C.将5个初值依次赋给b[1]至b[5]
D.由于数组长度与初值的个数不相同,所以此语句不正确。
18.以下格式控制符不是输出整数的是() [单选题] *
用于存放创建后则不变的字符串常量
A.%c(正确答案)
B.%u
C.%o
D.%x
19.以下关于float型变量和double 型变量的描述,不正确的是( ) [单选题] *
A.double型变量更常用(正确答案)
B.double型变量精度更高
C.double型变量占用的存储空间更大
D.double型变量的取值范围更大
20.下面有关for循环的正确描述是()。 [单选题] *
A.for循环的循环体可以包含多条语句,但必须用花括号括起来(正确答案)
B.for循环只能用于循环次数已经确定的情况
C.for循环是先执行循环体语句,后判断条件表达式
D.for循环中,不能用break语句跳出循环体
二、程序阅读题(本大题共5小题,每小题6分,共30分。请将程序的运行结果填写在答题纸的相应位置上。)
1._____________________
main( )
{ int a=10, y=0;
do
{ a+=2; y+=a;
if (y>50) break;
} while (a<14);

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。