东大22年春学期《高级语言程序设计基础X》在线平时作业2[答案怎么获取?]答案
东大22年春学期《高级语言程序设计基础X》在线平时作业2-00001
试卷总分:100 得分:100
一、单选题 (共 25 道试题,共 100 分)
1.C语言中字符型(char)数据在内存中的存储形式是( )。
A.原码
B.补码
C.反码
D.ASCII码
正确答案:-----
2.C语言的编译系统对宏命令的处理是( )。
A.在对源程序中其它成分正式编译之前进行的
B.和C程序中的其它语句同时进行的
C.在程序连接时进行的
D.在程序运行时进行的
正确答案:-----
3.以下对二维数组a的正确说明是( )。
A.int a[3][];
B.float a(3,4);
C.double a[1][4]
正确答案:-----
D.float a(3)(4);
正确答案:-----
4.若执行下述程序时从键盘输入3 4,则输出结果是( )。
#include main( ) { int a,b,s;
正确答案:-----
scanf("%d%d",&a,&b);
正确答案:-----
s=a; if (a
正确答案:-----
A.216
B.256
C.324
D.400
正确答案:-----
5.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for (y=100; x!=y; ++x,y++) printf("**** ");
A.循环体只执行一次
B.是无限循环
C.循环体一次都不执行
D.for语句中存在语法错误
正确答案:-----
6.以下在任何情况下计算两数积时都不会引起二义性的宏定义是( )。
A.#define MUL(x,y) x*y
正确答案:-----
B.#define MUL(x,y) (x)*(y)
正确答案:-----
C.#define MUL(x,y) (x*y)
正确答案:-----
D.#define MUL(x,y) ((x)*(y))"
正确答案:-----
7.对两个数组a和b进行如下初始化 char a[]="ABCDEF"; char b[]={'A','B','C','D','E','F'}; 则以下叙述正确的是( )。
正确答案:-----
A.a与b数组完全相同
B.a与b长度相同
C.a和b中都存放字符串
D.a数组比b数组长
正确答案:-----
8.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。
A.float
B.int
C.long
D.double
正确答案:-----
9.以下对C语言中共用体类型数据的叙述正确的是( )。
A.可以对共用体变量名直接赋值
B.一个共用体变量中可以同时存放其所有成员
C.一个共用体变量中不能同时存放其所有成员
D.共用体类型定义中不能出现结构体类型的成员
正确答案:-----
10.已知 long i=32768;执行语句printf("%d",i);屏幕显示( )。
正确答案:-----
A.-1
B.-32768
C.1
D.32768
正确答案:-----
11.以下能对一维数组a进行正确初始化的语句是( )。
A.int a[10]=(0,0,0,0,0);
B.int a[10]={ };
C.int a[]={0};
D.int a[10]=(10*1);
正确答案:-----
12.下列程序的输出结果是( )。 #include void fun(); void main() { int x=1; if(x= =1) { int x=2; printf(“%d”,++x); } void fun() { printf(“%d”,x++);}
正确答案:-----
A.2,1,1
B.1,2,1
C.2,2,2
D.2,2,1"
正确答案:-----
13.若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A.j*m+i
B.i*m+j
C.i*m+j-1
D.i*m+j+1
正确答案:-----
14.若有说明:int a[][4]={0,0};则下面不正确的叙述是( )。
A.数组a中的每个元素都可得到初值0
B.二维数组a的第1维大小为1
C.因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1
D.只有数组元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
正确答案:-----
15.已知学生记录描述如下,下面对结构体成员"computer"的赋值方式正确的是( )。 struct student { int num; char name[8]; struct { float math; float engl; float computer; } mark;} std;
正确答案:-----
A.student.computer=84;
正确答案:-----
B.mark.computer=84;
C.std.mark.computer=84;
正确答案:-----
D.std.computer=84;
正确答案:-----
16.设有定义:int a=1, *p=&a; float b=2.0; char c='A'; ,以下不合法的运算是( )。
A.p++;
B.a--;
C.b++;
D.c--;
正确答案:-----
17.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。
正确答案:-----
A.*pc[0]代表的是字符串"aaa
B.*pc[0]代表的是字符'a'
C.pc[0]代表的是字符串"aaa"
D.pc[0]代表的是字符'a'
正确答案:-----
21.以下为一维整型数组a的正确说明是( )。
A.int a(10);
B.int n=10,a[n];
C.int n; scanf("%d",&n); int a[n];
正确答案:-----
D.#define SIZE 10;int a[SIZE];
正确答案:-----
19.若a和b均为int型变量,则执行以下程序断后x的输出是( )。 x=15;y=15;printf("%d ",x%=(y%=2));
正确答案:-----
A.0
B.1
C.6
D.12
正确答案:-----
20.以下程序段的执行结果是( )。 int x=-3; do { printf("%d ", x++); }while(!x);
正确答案:-----
A.-3
B.-2
C.-1
D.陷入死循环
正确答案:-----
21.以下不正确的定义语句是( )。
A.double x[5]={2.0,4,0,6,0,8,0,10.0};
正确答案:-----
B.int y[5]={0,1,3,5,7,9};
C.char c1[]={'1','2','3','4','5'};
D.char c2[]={'x10','xa','x8'};"
正确答案:-----
22.以下运算正确的程序段是( )。
A.char str1[]="ABCDE", str2[]="abcdef"; strcpy(str1, str2);
正确答案:-----
B.char str[10], *st="abcde"; strcat(str, st);
正确答案:-----
C.char *st1="ABCDS", *st2="abcde"; strcat(st1,st2);
正确答案:-----
D.char str[10]="", *st="abcde"; strcat(str, st);"
正确答案:-----
23.下面程序段的运行结果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]);
正确答案:-----
A.空格
B.\0
C.e
D.f
正确答案:-----
24.定义如下变量和数组:int k; int a[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )。for(k=0;k<3;k++) printf("%d",a[k][2-k]);
正确答案:-----
A.3 5 7
B.3 6 9
C.1 5 9
D.1 4 7
正确答案:-----
25.设c1、c2均是char类型变量,则以下不正确的函数调用是( )。
A.scanf("c1=%cc2=%c",&c1,&c2);
B.getchar( )
C.putchar(c2);
D.putchar(c1,c2)"
正确答案:-----
东大22年春学期《高级语言程序设计基础X》在线平时作业2[答案怎么获取?]历年参考题目如下:
21春学期《高级语言程序设计基础X》在线平时作业3
试卷总分:100 得分:100
一、单选题 (共 25 道试题,共 100 分)
1.若有定义:int i, x[3][4];,则不能将x[1][1]的值赋给变量i的语句是( )。
A.i=x[1][1]
B.i=*(*(x+1))
C.i=*(*(x+1)+1)
D.i=*(x[1]+1)
2.下面程序段的运行结果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]);
A.空格
B.\0
C.e
D.f
3.C语言程序从main()函数开始执行,所以这个函数要写在( )。
A.程序文件的开始
B.程序文件的最后
C.它所调用的函数的前面
D.程序文件的任何位置
4.若k为整型变量,则以下for循环的执行次数是( )。 for (k=2; k==0; ) printf("%d",k--);
A.无限次
B.0次
C.1次
D.2次
5.以下程序段中的do-while循环( )。 m=-1; do { m=m*m; }while(!m);
A.是死循环
B.执行二次
C.执行一次
D.有语法错误
6.若执行下述程序时从键盘输入3 4,则输出结果是( )。
#include main( ) { int a,b,s;
scanf("%d%d",&a,&b);
s=a; if (a
A.186
B.256
C.324
D.400
7.设ch是char类型变量,其值是A,则表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( )。
A.Z
B.A
C.a
D.z
8.对两个数组a和b进行如下初始化 char a[]="ABCDEF"; char b[]={'A','B','C','D','E','F'}; 则以下叙述正确的是( )。
A.a与b数组完全相同
B.a与b长度相同
C.a和b中都存放字符串
D.a数组比b数组长
9.以下程序运行后,输出结果是( )。 #define ADD(x) x+x main( ) { int m=1, n=2, s=3; s*=ADD(m+n); printf("s=%d ", s); }
A.s=8
B.s=9
C.s=6
D.s=18
10.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。
A.float
B.int
C.long
D.double
11.若有定义:int x[10], *p=x;,则*(p+5)表示( )。
A.数组元素x[5]的地址
B.数组元素x[5]的值
C.数组元素x[6]的地址
D.数组元素x[6]的值
E.选项内容11
F.选项内容11
12.若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是( )。
A.a, p, &*a
B.*&a, &a, *p
C.&a, p, &*p
D.*&p, *p, &a"
13.设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);
A.1234123121
B.1234123412341234
C.1234+1234+1234+1234
D.1234+123+12+1
14.以下对C语言中共用体类型数据的叙述正确的是( )。
A.可以对共用体变量名直接赋值
B.一个共用体变量中可以同时存放其所有成员
C.一个共用体变量中不能同时存放其所有成员
D.共用体类型定义中不能出现结构体类型的成员
15.C语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是( )。
A.地址传递
B.单向值传递
C.由实参传给形参,再由形参传回实参
D.由用户指定传递方式
16.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。
A.*pc[0]代表的是字符串"aaa
B.*pc[0]代表的是字符'a'
C.pc[0]代表的是字符串"aaa"
D.pc[0]代表的是字符'a'
17.若有说明:int a[3][4];则数组a中各元素( )。
A.可在程序的运行阶段得到初值0
B.可在程序的编译阶段得到初值0
C.不能得到确定的初值
D.可在程序的编译或运行阶段得到初值0
18.当定义一个结构体变量时系统分配给它的内存是( )。
A.结构中第一个成员所需的内存量
B.结构中最后一个成员所需的内存量
C.结构体成员中占内存量最大者所需的容量
D.结构体中各成员所需内存量的总和
19.在C语言中,错误的int类型的常数是( )。
A.32768
B.0
C.37
D.0xAF
20.当正常执行了文件关闭操作时,fclose函数的返回值是( )。
A.-1
B.随机值
C.0
D.1
21.以下运算正确的程序段是( )。
A.char str1[]="ABCDE", str2[]="abcdef"; strcpy(str1, str2);
B.char str[10], *st="abcde"; strcat(str, st);
C.char *st1="ABCDS", *st2="abcde"; strcat(st1,st2);
D.char str[10]="", *st="abcde"; strcat(str, st);"
22.以下对指针变量的操作中,不正确的是( )。
A.int p, *q; q=&p;
B.int *p, *q; q=p=NULL;
C.int a=5, *p; *p=a;
D.int a=5, *p=&a, *q=&a; *p=*q;"
23.语句while (!y)中的表达式 !y 等价于( )。
A.y==0
B.y!=1
C.y!=0
D.y==1
24.若要使指针变量p指向一个动态开辟的字符型存储单元,则空中应选择填入的是( )。 char *p;p= malloc(sizeof(char));
A.char
B.char *
C.(*char)
D.(char *)
25.已知ch是字符型变量,则不正确的赋值语句是( )。
A.ch=5+9;
B.ch='\0';
C.ch='7'+'9';
D.ch='a+b';