|
|
西交16年5月清考《程序设计基础》作业考核试题
一、单选题:【30道,总分:60分】
无忧答案网
1.若有int a[][]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为( )。 (满分:2)
A. 非法,2
B. &a[1][0],2
C. &a[0][1],3
D. a[0][0],4
2.变量的指针,其含义是指该变量的( )。 (满分:2)
A. 值
B. 地址
C. 名
D. 一个标志
3.以下叙述不正确的是( )。 (满分:2)
A. 一个C源程序可由一个或多个函数组成
B. 一个C源程序必须包含一个main函数
C. C程序的基本组成单位是函数
D. 在C程序中,注释说明只能位于一条语句的后面
4.函数的形式参数隐含的存储类型说明是( )。 (满分:2)
A. extern
B. static
C. register
D. auto
5.可将C源程序存在磁盘上,还可将数据按数据类型分别以( )的形式存在磁盘上。 (满分:2)
A. 内存
B. 缓冲区
C. 文件
D. 寄存器
6.以下只有在使用时才为该类型变量分配内存的存储类说明是( )。 (满分:2)
A. auto和static
B. auto和register
C. register和static
D. extern和register
7.以下数值中,不正确的八进制数或十六进制数是( )。 (满分:2)
A. 0x16
B. 016
C. -1
D. 0xaaaa
8.若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为( )。 (满分:2)
A. printf("%d",*(a+5));
B. printf("%d",p[5]);
C. printf("%d",*(p+5));
D. printf("%d",*p[5]);
9.以下正确的说法是:在C语言中( 无忧答案网 )。 (满分:2)
A. 实参和与其对应的形参各占用独立的存储单元
B. 实参和与其对应的形参共占用一个存储单元
C. 只有当实参和与其对应的形参同名时才共占用存储单元
D. 形参是虚拟的,不占用存储单元
10.在位运算中,操作数每右移一位,其结果相当于( )。 (满分:2)
A. 操作数乘以2
B. 操作数除以2
C. 操作数乘以16
D. 操作数除以16
11.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( )。 (满分:2)
A. int
B. float
C. double
D. 不确定
12.结构体类型的定义允许嵌套是指( )。 (满分:2)
A. 成员是已经或正在定义的结构体型
B. 成员可以重名
C. 结构体型可以派生
D. 定义多个结构体型
13.以下对C语言函数的描述中,正确的是( )。 (满分:2)
A. C程序必须由一个或一个以上的函数组成
B. C函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. C程序中有调用关系的所有函数必须放在同一个程序文件中
14.已知函数的调用形式fread(buffer,size,count,fp);其中buffer代表的是( )。 (满分:2)
A. 一个整数,代表要读入的数据项总数
B. 一个文件指针,指向要读的文件
C. 一个指针,指向要读入数据的存放地址
D. 一个存储区,存放要读的数据项
15.C语言中的文件类型只有( )。 (满分:2)无忧答案网
A. 索引文件和文本文件两种
B. ASCII文件和二进制文件两种
C. 文本文件一种
D. 二进制文件一种
16.逻辑运算符两侧运算对象的数据类型( )。 (满分:2)
A. 只能是0或1
B. 只能是0或非0正数
C. 只能是整型或字符型数据
D. 可以是任何类型的数据
17.语句while(!E);中的表达式!E等价于( )。 (满分:2)
A. E==0
B. E!=1
C. E!=0
D. E==1
18.double x;scanf("%lf",&x);不可以赋值给x变量的常量是( )。 (满分:2)
A. 123
B. 100000
C. A'
D. "abc"
19.以下叙述正确的是( )。 (满分:2)
A. 在C程序中,main函数必须位于程序的最前面
B. C程序的每行中只能写一条语句
C. C语言本身没有输入输出语句
D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误
20.若有下列定义和语句,则对a数组元素的非法引用是( )。Int a[2][3],(*pt)[3];pt=a; (满分:2)
A. pt[0][0]
B. *(pt+1)[2]
C. *(pt[1]+2)
D. *(a[0]+2
21.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是( )。 (满分:2)
A. EOF
B. 0
C. 非零值
D. NULL
22.设int x=1,y=1;表达式(!x( )y--)的值是( )。 (满分:2)
A. 0
B. 1
C. 2
D. -1
23.执行以下程序段后,输出结果和a的值是( )。Int a=10;printf("%d",a++); (满分:2)
A. 10和10
B. 10和11
C. 11和10
D. 11和11
24.C语言中,定义结构体的保留字是( )。 (满分:2)
A. union
B. struct
C. enum
D. typedef
25.以下运算符中,优先级最高的运算符是( )。 (满分:2)
A. =
B. !=
C. *(乘号)
D.( )
26.下列程序的输出结果是( )。main( ){int x=1,y=0,a=0,b=0;switch(x){case1.switch(y){case0.a++;break;case1.b++;break;}case2.a++;b++;break;case3.a++;b++;break;}printf("a=%d,b=%d\n",a,b);} (满分:2)
A. a=1,b=0
B. a=2,b=1
C. a=1,b=1
D. a=2,b=2
27.应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为( )。 (满分:2)
A. fclose( )
B. close( )
C. fread( )
D. fwrite
28.下列程序的输出结果为( )。main( ){int m=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);} (满分:2)
A. 27.000000
B. 27.500000
C. 28.000000
D. 28.500000
29.已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是( )。 (满分:2)
A. 0
B. 语法错
C. 1
D. "假"
30.在C语言中,能代表逻辑值“真”的是( )。 (满分:2)
A. True
B. 大于0的数
C. 非0整数
D. 非0的数
二、多选题:【10道,总分:20分】
1.以下用户标识符,其中合法的是( )。 (满分:2)
A. return
B. f2G3
C. A3-3
D. abc
2.下列对逻辑运算符两侧的运算对象的数据类型描述不正确的是( )。 (满分:2)
A. 只能是0或1
B. 只能是0或非0正数
C. 可以是整型或字符型数据
D. 可以是任何类型的数据
3.以下选项中合法的表达式是( )。 (满分:2)
A. 0<=x<100
B. i=j==0
C.(char)(65+3)
D. x+1=x+1
4.在定义int a[2][3];之后,对a的引用正确的有( )。 (满分:2)
A. a[0][2]
B. a[1,3]
C. a[1>2][!1]
D. a[2][0]
5.以下叙述正确的是( )。 (满分:2)
A. C语言严格区分大小写英文字母
B. C语言用";"作为语句分隔符
C. C程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上.
D. 可以使用/*…*/对C程序中的任何部分作注释
6.若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是( )。 (满分:2)
A. a=b=c=d=100;
B. d++;
C. c+b;
D. d=(c=22)-(b++);
7.以下不符合C语言语法的实型常量是( )。 (满分:2)
A. 1.2E0.5
B. 3.14.159E
C. .5E-3
D. E15
8.以下4个选项中,可以看作是一条语句的有( )。 (满分:2)
A. {;}
B. a=0,b=0,c=0;
C. if(a>0);
D. if(b==0)m=1;n=2;
9.定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有( )。 (满分:2)
A. 1112<回车>
B. 11,<空格>12<回车>
C. 11,12<回车>
D. 11,<回车>12<回车>
10.对do-while语句描述正确的是(无忧答案网 )。 (满分:2)
A. do-while语句构成的循环可以使用break语句退出循环
B. do-while语句构成的循环必须使用break语句退出循环
C. do-while语句构成的循环,当while中的表达式值为非零时结束循环
D. do-while语句构成的循环,当while中的表达式值为零时结束循环
三、判断题:【10道,总分:20分】
1.C语言既可以用来写系统软件,也可以用来写应用软件。( ) (满分:2)
A. 错误
B. 正确
2.若a=7,b=5;则执行a&&b++后,b为6。( ) (满分:2)
A. 错误
B. 正确
3.若有int a[10]={1,2,3,4,5,6,7,8,9,10};a=a+1;则这时a代表元素2的位元元址。( ) (满分:2)
A. 错误
B. 正确
4.若有static int a[10];则a数组的10个元素的值都是0。( ) (满分:2)
A. 错误
B. 正确
5.若定义char *str;则str="BOOK";是正确的。( ) (满分:2)
A. 错误
B. 正确无忧答案网
6.C语言中,feof函数用来判断即将读入的是否是文件结束标志,它可用于二进制文件,但不能用于文本文件。( ) (满分:2)
A. 错误
B. 正确
7.表达式 ’a’ 和 “a” 是不同的,前者长度为1,后者长度为2。( ) (满分:2)
A. 错误
B. 正确无忧答案网
8.若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是p=n;。( ) (满分:2)
A. 错误
B. 正确
9.C语言中rewind函数使位置指针回到文件的开头位置,而fseek函数使位置指针移到指定的位置。( ) (满分:2)
A. 错误
B. 正确
10.在C的if语句中,用作判断的表达式只能是关系表达式或逻辑表达式。( ) (满分:2)
A. 错误
B. 正确
无忧答案网
|
|