东大19秋学期《高级语言程序设计基础》在线平时作业3[满分答案]答案
19秋学期《高级语言程序设计基础》在线平时作业3
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 100 分)
1.以下程序段中的do-while循环( )。 m=-1; do { m=m*m; }while(!m);
A.有语法错误
B.是死循环
C.执行二次
D.执行一次
2.对以下说明语句的正确理解是( )。 int a[10]={6,7,8,9,10};
A.将5个初值依次赋给a[6]至a[10]
B.将5个初值依次赋给a[1]至a[5]
C.将5个初值依次赋给a[0]至a[4]
D.因为数组与初值的个数不相同,所以此语句不正确
3.下面程序的运行结果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]);
A.输出空格
B.f
C.e
D.\0
4.若有定义:int x[10], *p=x;,则*(p+5)表示( )。
A.选项内容11
B.选项内容11
C.选项内容11
D.数组元素x[6]的地址
E.数组元素x[6]的值
F.数组元素x[5]的地址
G.数组元素x[5]的值
5.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第一个位置上。)
A.j*m+i
B.i*m+j-1
C.i*m+j+1
D.i*m+j
6.如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。
A.该变量在该函数中有效
B.该变量在本程序范围内有效
C.该变量只在该复合语句中有效
D.该变量为非法变量
7.以下对C语言中共用体类型数据的叙述正确的是( )。
A.可以对共用体变量名直接赋值
B.共用体类型定义中不能出现结构体类型的成员
C.一个共用体变量中可以同时存放其所有成员
D.一个共用体变量中不能同时存放其所有成员
8.以下程序的运行结果是( )。 # include "stdio.h" main() { struct date { int y,m,d;} today; printf("%d\n", sizeof(struct date));}
A.出错
B.6
C.3
D.2
9.语句while (!y)中的表达式 !y 等价于( )。
A.y==1
B.y==0
C.y!=1
D.y!=0
10.若有以下程序段: for (m=1; m<=100; m++) { scanf("%d", &y); if (y<0) continue; printf("%3d", m); }正确的描述是( )。
A.最多允许输出100个非负整数
B.当y<0时整个循环结束
C.y>=0时什么也不输出
D.printf函数永远也不执行
11.若a和b均为int型变量,则执行以下程序断后x的输出是( )。 x=15;y=15;printf("%d\n",x%=(y%=2));
A.6
B.12
C.1
D.0
12.以下正确的定义语句是( )。
A.long b[2][3]={{1},{1,2},{1,2,3}};
B.int a[1][4]={1,2,3,4,5};
C.float x[3][]={{1},{2},{3}};
D.double y[][3]={0};
13.若用fopen打开一个新的二进制文件,要求文件既能读又能写,则应选用的文件方式字符串是( )。
A."wb+
B."rb+"
C."r+"
D."ab+""
14.函数rewind(fp)的作用是:使文件位置指针( )。
A.重新返回文件的开头
B.返回到前一个字符的位置
C.自动移至下一个字符的位置
D.指向文件的末尾
15.已知 long i=32768;执行语句printf("%d",i);屏幕显示( )。
A.32768
B.1
C.-32768
D.-1
16.下程序( )。 main( ) { int x1=3, x2=0, x3=0; if (x1=x2+x3) printf("* * * *"); else printf("# # # #"); }
A.输出:* * * *
B.输出:# # #
C.无输出结果
D.#存在语法错误
17.C语言结构体类型变量在程序执行期间( )。
A.部分成员驻留在内存中
B.没有成员驻留在内存中
C.所有成员一直驻留在内存中
D.只有一个成员驻留在内存中
18.若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A.j*m+i
B.i*m+j-1
C.i*m+j+1
D.i*m+j
19.当定义一个结构体变量时系统分配给它的内存是( )。
A.结构体成员中占内存量最大者所需的容量
B.结构体中各成员所需内存量的总和
C.结构中第一个成员所需的内存量
D.结构中最后一个成员所需的内存量
20.以下不正确的定义语句是( )。
A.int y[5]={0,1,3,5,7,9};
B.double x[5]={2.0,4,0,6,0,8,0,10.0};
C.char c2[]={'\x10','\xa','\x8'};"
D.char c1[]={'1','2','3','4','5'};
东大19秋学期《高级语言程序设计基础》在线平时作业3[满分答案]历年真题如下: