|
16春学期《高级语言程序设计基础》在线作业3
一、单选题:【20道,总分:100分】
1.在一个源文件中定义的全局变量的作用域为( )。 (满分:5)
A. 本文件的全部范围
B. 本程序的全部范围
C. 本函数的全部范围
D. 从定义该变量的位置开始至本文件结束
2.下面程序的运行结果是( )。main( ){ int b[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *q=b; printf("%d\n", *(q+2) );} (满分:5)
A. 1
B. 2
C. 3
D. 4
3.以下程序运行后,输出结果是( )。 #define ADD(x) x+x main( ) { int m=1, n=2, s=3; s*=ADD(m+n); printf("s=%d\n", s); } (满分:5)
A. s=8
B. s=9
C. s=6
D. s=18
4.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for(y=100; x!=y; ++x,y++) printf("****\n"); (满分:5)
A. 循环体只执行一次
B. 是无限循环
C. 循环体一次都不执行
D. for语句中存在语法错误
5.若有说明:int a[10];则对数组元素的正确引用是( )。 (满分:5)
A. a[10]
B. a[3
5]
C. a(5)
D. a[10-10]
6.若有说明:int a[3][4]={0};则下面正确的叙述是( )。 (满分:5)
A. 只有数组元素a[0][0]可得到初值0
B. 此说明语句不正确
C. 数组a中各元素都可得到初值,但其值不一定为0
D. 数组a中每个元素均可得到初值0
7.下面对typedef的叙述中不正确的是( )。 (满分:5)
A. 用typedef不能定义变量名
B. 用typedef可以定义新的数据类型
C. 用typedef只是将已存在的类型用一个新的标识符来代表
D. 使用typedef有利于程序的通用和移植
8.若有说明:int a[3][4];则数组a中各元素( )。 (满分:5)
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
9.若二维数组a有m列,则在a[i][j]前的元素个数为( )。 (满分:5)
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
10.设a、b、c、d均是int类型变量,为了使以下程序段的输出为:1234+123+12+1,正确的输入形式应当是( )。scanf("%4d+%3d+%2d+%1d",&a,&b,&c,&d);printf("%4d+%3d+%2d+%1d",a, b, c, d); (满分:5)
A. 1234123121
B. 1234123412341234
C. 1234+1234+1234+1234
D. 1234+123+12+1
11.当定义一个结构体变量时系统分配给它的内存是( )。 (满分:5)
A. 结构中第一个成员所需的内存量
B. 结构中最后一个成员所需的内存量
C. 结构体成员中占内存量最大者所需的容量
D. 结构体中各成员所需内存量的总和
12.有字符数组a[80]和b[80],则正确的输出语句是( )。 (满分:5)
A. puts(a.b);
B. printf("%s
%s"
a[]
b[]);
C. pitchar(a
b);
D. puts(a); puts(b);
13.以下程序执行后a的值为( )。 main( ) { int a,m=2, k=1, *p=&k; a=p!=&m; printf("%d\n",a); } (满分:5)
A. -1
B. 0
C. 1
D. 2
14.下面程序段的运行结果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]); (满分:5)
A. 空格
B. \0
C. e
D. f
15.若有说明:int a[3][4];则对a数组元素的非法引用是( )。 (满分:5)
A. a[0][2*1]
B. a[1][3]
C. a[4-2][0]
D. a[0][4]
16.判断字符串a和b是否相等,应当使用( )。 (满分:5)
A. if(a==b)
B. if(a=b)
C. if(strcpy(a
b))
D. if(strcmp(a
b))"
17.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。 (满分:5)
A. *pc[0]代表的是字符串"aaa
B. *pc[0]代表的是字符'a'
C. pc[0]代表的是字符串"aaa"
D. pc[0]代表的是字符'a'
18.以下程序的运行结果是( )。 main( ) { int a=1, k; for(k=0; k<3; k++) printf("%4d", f1(a)); } f1(int x) { static int z=3, y=0; y++; z++; return(x+y+z); } (满分:5)
A. 6 8 10
B. 6 6 6
C. 7 8 9
D. 7 9 11
19.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。 (满分:5)
A. float
B. int
C. long
D. double
20.以下能正确定义整型变量x、y和z并为其赋初值5的语句是( )。 (满分:5)
A. int x=y=z=5;
B. int x
y
z=5;
C. int x=5
y=5
z=5;
D. x=5
y=5
z=5;"
|
|