西交16年3月课程《程序设计基础》作业考核答案
西安交通大学16年3月课程考试《程序设计基础》作业考核试题一、单选题:
1.若有说明int a;则a数组元素的非法引用是( )。 (满分:2)
A. a
B. a
C. a
D. a
2.函数rewind的作用是( )。 (满分:2)
A. 使位置指针重新返回文件的开头
B. 将位置指针指向文件中所要求的特定位置
C. 使位置指针指向文件的末尾
D. 使位置指针自动移至下一个字符位置
3.结构体类型的定义允许嵌套是指( )。 (满分:2)
A. 成员是已经或正在定义的结构体型
B. 成员可以重名
C. 结构体型可以派生
D. 定义多个结构体型
4.下面有关for循环的正确描述是( )。 (满分:2)
A. for循环只能用于循环次数已经确定的情况
B. for循环是先执行循环循环体语句
后判断表达式
C. 在for循环中
不能用break语句跳出循环体
D. for循环的循环体语句中
可以包含多条语句
但必须用花括号括起来
5.C语言中,定义结构体的保留字是( )。 (满分:2)
A. union
B. struct
C. enum
D. typedef
6.以下运算符中,优先级最高的运算符是( )。 (满分:2)
A.( )
B. %
C. !
D. ==
7.以下叙述中错误的是( )。 (满分:2)
A. 二进制文件打开后可以先读文件的末尾
而顺序文件不可以
B. 在程序结束时
应当用fclose函数关闭已打开的文件
C. 在利用fread函数从二进制文件中读数据时
可以用数组名给数组中所有元素读入数据
D. 不可以用FILE定义指向二进制文件的文件指针
8.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( )。 (满分:2)
A. 地址传递
B. 单向值传递
C. 由实参传给形参,再由形参传回实参
D. 传递方式由用户指定
9.若k为int型变量,则以下程序段的执行结果是( )。k=-8567;printf("|%06D|\n",k); (满分:2)
A. 格式描述符不合法
输出无定值
B. 输出为|%06D|
C. 输出为|0-8567|
D. 输出为|-8567|
10.要打开A盘上user子目录下名为ab##txt的文本文件进行读、写操作,下面符合此要求的函数调用是( )。 (满分:2)
A. fopen(" \user\ab
B. txt"
"r")
C. fopen(" \\user\\ab
D. txt"
"r+")
E. fopen(" \user\ab
F. txt"
"rb")
G. fopen(" \\user\\ab
H. txt"
"w")
11.下列程序的输出结果为( )。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
12.在C语言中,char型数据在内存中的存储形式是( )。 (满分:2)
A. 补码
B. 反码
C. 原码
D. ASCII码
13.若有int a[][]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为( )。 (满分:2)
A. 非法
2
B. &a
2
C. &a
3
D. a
4
14.若使用一维数组名作函数实参,则以下正确的说法是( )。 (满分:2)
A. 必须在主调函数中说明此数组的大小
B. 实参数组类型与形参数组类型可以不匹配
C. 在被调用函数中
不需要考虑形参数组的大小
D. 实参数组名与形参数组名必须一致
15.若有int i=3,*p;p=&i;下列语句中输出结果为3的是( )。 (满分:2)
A. printf("%d"
&p);
B. printf("%d"
*i);
C. printf("%d"
*p);
D. printf("%d"
p);
16.设有说明.char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为( )。 (满分:2)
A. float
B. char
C. int
D. double
17.关于建立函数的目的,以下正确的说法是( )。 (满分:2)
A. 提高程序的执行效率
B. 提高程序的可读性
C. 减少程序的篇幅
D. 减少程序文件所占内存
18.若执行fopen函数时发生错误,则函数的返回值是( )。 (满分:2)
A. 地址值
B. 0
C. 1
D. EOF
19.C语言中,要求运算数必须是整型的运算符是( )。 (满分:2)
A. ^
B. %
C. !
D. >
20.设int x=1,y=1;表达式(!x( )y--)的值是( )。 (满分:2)
A. 0
B. 1
C. 2
D. -1
21.应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为( )。 (满分:2)
A. fclose( )
B. close( )
C. fread( )
D. fwrite
22.以下叙述中正确的是( )。 (满分:2)
A. 在程序的一行上可以出现多个有效的预处理命令行
B. 使用带参的宏时
参数的类型应与宏定义时的一致
C. 宏替换不占用运行时间
只占编译时间
D. 在以下定义中CR是称为"宏名"的标识符#defineCR045
23.经过下列的语句 int j,a,*p;定义后,下列语句中合法的是( )。 (满分:2)
A. p=p+2;
B. p=a;
C. p=a+2;
D. p=&(j+2);
24.以下标识符中,不能作为合法的C用户定义标识符的是( )。 (满分:2)
A. putchar
B. double
C. 123
D. INT
25.下列程序段的输出结果为( )。Int x=3,y=2;printf("%d",(x-=y,x*=y+8/5)); (满分:2)
A. 1
B. 7
C. 3
D. 5
26.执行以下程序段后,输出结果和a的值是( )。Int a=10;printf("%d",a++); (满分:2)
A. 10和10
B. 10和11
C. 11和10
D. 11和11
27.以下选项中,与k=n++完全等价的表达式是( )。 (满分:2)
A. k=n
n=n+1
B. n=n+1
k=n
C. k=++n
D. k+=n+1
28.若有说明.int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是( )。 (满分:2)
A. i=*p;
B. *p=*&j;
C. i=&j;
D. i=**p;
29.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为( )。 (满分:2)
A. 自动(auto)
B. 静态(static)
C. 外部(extern)
D. 寄存器(register)
30.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( )。 (满分:2)
A. int
B. float
C. double
D. 不确定
二、多选题:
1.能正确表示逻辑关系:"a≥10"的C语言表达式是( )。 (满分:2)
A. a≥10
B. !(a<10)
C. a>=10
D. a<10
2.以下叙述中正确的是( )。 (满分:2)
A. 一个C源程序可由一个或多个函数组成
B. 一个C源程序必须包含一个main( )函数
C. C源程序的基本组成单位是函数
D. 在C源程序中,注释说明只能位于一条语句的最后
3.在定义int a;之后,对a的引用正确的有( )。 (满分:2)
A. a
B. a[1
3]
C. a[!1]
D. a
4.下面那些为合法整型常量( ) (满分:2)
A. 190
B. 0xf
C. 0765
D. 0xk
5.int a={1,2,3,4,5,6,7,8,9,10},以下的赋值语句正确的是( )。 (满分:2)
A. a=7
B. a=2
C. a=3
D. a=10
6.t为int类型,进入下面的循环之前,t的值为0do{………}while(t==1);则以下叙述中正确的是( ) (满分:2)
A. 循环控制表达式的值为0
B. 循环控制表达式的值为1
C. 循环控制表达式合法
D. 以上说法都不对
7.定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有( )。 (满分:2)
A. 1112<回车>
B. 11
<空格>12<回车>
C. 11
12<回车>
D. 11
<回车>12<回车>
8.以下选项中合法的表达式是( )。 (满分:2)
A. 0<=x<100
B. i=j==0
C.(char)(65+3)
D. x+1=x+1
9.以下叙述正确的是( )。 (满分:2)
A. 预处理命令行都必须以"#"开始
B. 在程序中凡是以"#"开始的语句行都是预处理命令行
C. C程序在执行过程中对预处理命令行进行处理
D. #defineABCD是正确的宏定义
10.定义c为字符型变量,则下列语句中错误的是( )。 (满分:2)
A. c='97';
B. c="97";
C. c=97;
D. c="a";
三、判断题:
1.C语言中,feof函数用来判断即将读入的是否是文件结束标志,它可用于二进制文件,但不能用于文本文件。( ) (满分:2)
A. 错误
B. 正确
2.数组名代表数组的起始地址。( ) (满分:2)
A. 错误
B. 正确
3.若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是p=n;。( ) (满分:2)
A. 错误
B. 正确
4.C语言既可以用来写系统软件,也可以用来写应用软件。( ) (满分:2)
A. 错误
B. 正确
5.数组名是指标常量,不需要也不能为其赋值;指针是变量,使用前需对其赋值。( ) (满分:2)
A. 错误
B. 正确
6.自增运算符和自减运算符的结合方向也是“自左向右”。( ) (满分:2)
A. 错误
B. 正确
7.在C程序中“%”是只能用于整数运算的运算符,而“/”是既可以用于整数运算又可以用于实数运算的运算符。( ) (满分:2)
A. 错误
B. 正确
8.C语言可以直接访问物理位元元址。( ) (满分:2)
A. 错误
B. 正确
9.有unsigned int a=16;a=a<<2;则a的值是64。( ) (满分:2)
A. 错误
B. 正确
10.C语言的文件存取方式只能是顺序存取,不能随机存取。( ) (满分:2)
A. 错误
B. 正确
怎么买
0518xu 发表于 2016-3-1 09:41
怎么买
如何下载答案
http://www.ap5u.com/forum.php?mod=viewthread&tid=81&fromuid=33
(出处: 无忧答案网)
页:
[1]