东大22年春学期《高级语言程序设计基础X》在线平时作业3[答案怎么获取?]答案
东大22年春学期《高级语言程序设计基础X》在线平时作业3-00001
试卷总分:100 得分:100
一、单选题 (共 25 道试题,共 100 分)
1.若k为整型变量,则以下for循环的执行次数是( )。 for (k=2; k==0; ) printf("%d",k--);
正确答案:-----
A.无限次
B.0次
C.1次
D.2次
正确答案:-----
2.当说明一个共用体变量时系统分配给它的内存是( )。
A.共用体中第一个成员所需内存量
B.共用体中最后一个成员所需内存量
C.共用体成员中占内存量最大者所需的容量
D.共用体中各成员所需内存量的总和
正确答案:-----
3.若执行fopen函数时发生错误,则函数的返回值是( )。
A.随机值
B.1
C.NULL
D.EOF
正确答案:-----
4.以下正确的函数形式是( )。
A.double fun1(int x, int y) { z=x+y; return z; }
正确答案:-----
B.fun1(int x, y){ int z;return z; }
C.fun1(x, y) { int x, y; double z;z=x+y;return z; }
正确答案:-----
D.double fun1(int x, int y){ double z;z=x+y; return z; }"
正确答案:-----
5.若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 && t>a[j]) { a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。
A.对数组a进行插入排序(升序)
B.对数组a进行插入排序(降序)
C.对数组a进行选择排序(升序)
D.对数组a进行选择排序(降序)
正确答案:-----
6.判断char型变量c1是否为大写字母的正确表达式是( )。
A.A'<=c1<='Z'
B.(c1>='A')&(c1<='Z')
C.(c1>='A')&&(c1<='Z')
D.('A'=c1)
正确答案:-----
7.设有一段程序: int *var,a; a=100;var=&a;a=*var+10; 执行上面程序段后a的值为( )。
A.120
B.110
C.100
D.90
正确答案:-----
8.若有定义:int a[2][3];,则以下对a数组元素地址的正确表示为( )。
A.*(a+1)
B.*(a[1]+2)
C.a[1]+3
D.a[0][0]
正确答案:-----
9.若有以下说明,并且0≤i<10,则( )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I;
A.*(a+i)
B.a[p-a+i]
C.p+i
D.*(&a[i])
正确答案:-----
10.有两个字符数组a、b,则以下正确的输入语句是( )。
A.gets(a,b);
B.scanf("%s%s",a,b);
C.scanf("%s%s",&a,&b);
D.gets("a"); gets("b");"
正确答案:-----
11.对两个数组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数组长
正确答案:-----
12.下程序( )。 main( ) { int x1=3, x2=0, x3=0; if (x1=x2+x3) printf("* * * *"); else printf("# # # #"); }
A.输出:* * * *
B.输出:# # #
C.#存在语法错误
D.无输出结果
正确答案:-----
13.在C语言中,错误的int类型的常数是( )。
A.32768
B.0
C.37
D.0xAF
正确答案:-----
14.定义如下变量和数组: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
正确答案:-----
15.C语言的编译系统对宏命令的处理是( )。
A.在对源程序中其它成分正式编译之前进行的
B.和C程序中的其它语句同时进行的
C.在程序连接时进行的
D.在程序运行时进行的
正确答案:-----
16.以下有关宏替换的叙述不正确的是( )。
A.宏名不具有类型
B.宏名必须用大写字母表示
C.宏替换只是字符替换
D.宏替换不占用运行时间
正确答案:-----
17.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是( )。if(x>y)z=x;x=y;y=z;
A.x=10,y=20,z=30
B.x=20,y=30,z=30
C.x=20,y=30,z=10
D.x=20,y=30,z=20"
正确答案:-----
21.一个C语言程序总是从( )。
A.主过程开始执行
B.主函数开始执行
C.子程序开始执行
D.主程序开始执行
正确答案:-----
19.若a、b、c均为int型变量,则执行以下程序段后的输出结果为( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d ",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d ",a,b,c);
正确答案:-----
A.a=10,b=15,c=10a=10,b=5,c=10
B.a=10,b=10,c=10a=10,b=5,c=10
C.a=10,b=10,c=10a=10,b=5,c=15
D.a=10,b=10,c=10a=10,b=5,c=5
正确答案:-----
20.若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A.j*m+i
B.i*m+j
C.i*m+j-1
D.i*m+j+1
正确答案:-----
21.设x,y是float型变量,则不正确的赋值语句是( )。
A.++x;
B.y=int(5);
C.x*=y+1;
D.x=y=0;
正确答案:-----
22.设有定义:int a=1, *p=&a; float b=2.0; char c='A'; ,以下不合法的运算是( )。
A.p++;
B.a--;
C.b++;
D.c--;
正确答案:-----
23.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。
A.float
B.int
C.long
D.double
正确答案:-----
24.已知 long i=32768;执行语句printf("%d",i);屏幕显示( )。
正确答案:-----
A.-1
B.-32768
C.1
D.32768
正确答案:-----
25.若执行下述程序时从键盘输入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
正确答案:-----
东大22年春学期《高级语言程序设计基础X》在线平时作业3[答案怎么获取?]历年参考题目如下:
20秋学期《高级语言程序设计基础X》在线平时作业1
试卷总分:100 得分:100
一、单选题 (共 25 道试题,共 100 分)
1.在C语言中,错误的int类型的常数是( )。
A.32768
B.0
C.37
D.0xAF
2.若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。
A.2
B.3
C.4
D.无确定值
3.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for (y=100; x!=y; ++x,y++) printf("**** ");
A.循环体只执行一次
B.是无限循环
C.循环体一次都不执行
D.for语句中存在语法错误
4.有两个字符数组a、b,则以下正确的输入语句是( )。
A.gets(a,b);
B.scanf("%s%s",a,b);
C.scanf("%s%s",&a,&b);
D.gets("a"); gets("b");"
5.执行下面程序段后,x的值是( )。 int x;printf("%d ",(x=3*5,x+5));
A.10
B.15
C.20
D.5
6.若有定义:int x[10], *p=x;,则*(p+5)表示( )。
A.数组元素x[5]的地址
B.数组元素x[5]的值
C.数组元素x[6]的地址
D.数组元素x[6]的值
E.选项内容11
F.选项内容11
G.选项内容11
7.当说明一个共用体变量时系统分配给它的内存是( )。
A.共用体中第一个成员所需内存量
B.共用体中最后一个成员所需内存量
C.共用体成员中占内存量最大者所需的容量
D.共用体中各成员所需内存量的总和
8.下列关于C语言的叙述错误的是( )。
A.大写字母和小写字母的意义相同
B.不同类型的变量可以在一个表达式中
C.在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型
D.同一个运算符号在不同的场合可以有不同的含义
9.若要使指针变量p指向一个动态开辟的字符型存储单元,则空中应选择填入的是( )。 char *p;p= malloc(sizeof(char));
A.char
B.char *
C.(*char)
D.(char *)
10.若有以下语句,则对x数组元素引用不正确的是( )。 int x[ ]={1, 2, 3, 4, 5, 6}, *ptr;ptr=x;
A.*(--ptr)
B.*(ptr--)
C.*(ptr++)
D.*(++ptr)
11.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。
A.*pc[0]代表的是字符串"aaa
B.*pc[0]代表的是字符'a'
C.pc[0]代表的是字符串"aaa"
D.pc[0]代表的是字符'a'
12.下面程序的输出结果是( )。main(){ int x,i;for(i=1;i<=100;i++){ x=i;if(++x%2==0)if(++x%3==0)if(++x%7==0)printf("%d ",x);}}
A.39 81
B.42 84
C.26 68
D.28 70
13.以下运算正确的程序段是( )。
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);"
14.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第一个位置上。)
A.i*m+j
B.j*m+i
C.i*m+j-1
D.i*m+j+1
15.若执行下述程序时从键盘输入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
16.若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A.j*m+i
B.i*m+j
C.i*m+j-1
D.i*m+j+1
17.若有说明:int a[3][4];则数组a中各元素( )。
A.可在程序的运行阶段得到初值0
B.可在程序的编译阶段得到初值0
C.不能得到确定的初值
D.可在程序的编译或运行阶段得到初值0
18.当定义一个结构体变量时系统分配给它的内存是( )。
A.结构中第一个成员所需的内存量
B.结构中最后一个成员所需的内存量
C.结构体成员中占内存量最大者所需的容量
D.结构体中各成员所需内存量的总和
19.下列程序的输出结果是( )。 #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"
20.若有语句: char s1[ ]="Shenyang", s2[10],*s3, *s4="NEU_soft"; 则对库函数strcpy调用正确的是( )。
A.strcpy(s1, s4);
B.strcpy(s2, s4);
C.strcpy(s3, s1);
D.strcpy(s4, s1);"
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.若有定义:int x[10], *p=x;,则*(p+5)表示( )。
A.数组元素x[5]的地址
B.数组元素x[5]的值
C.数组元素x[6]的地址
D.数组元素x[6]的值
E.选项内容11
F.选项内容11
23.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是( )。if(x>y)z=x;x=y;y=z;
A.x=10,y=20,z=30
B.x=20,y=30,z=30
C.x=20,y=30,z=10
D.x=20,y=30,z=20"
24.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。
A.float
B.int
C.long
D.double
25.以下对指针变量的操作中,不正确的是( )。
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;"