东大22秋《高级语言程序设计基础X》在线平时作业3【标准答案】 作者:奥鹏周老师 分类: 东北大学 发布时间: 2022-11-22 12:42 作业答案 联系QQ:3326650399 微信:cs80188 微信二维码 《高级语言程序设计基础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" 18.一个C语言程序老是从( )。 A.主过程开端履行 B.主函数开端履行 C.子程序开端履行 D.主程序开端履行 19.若a、b、c均为int型变量,则履行以下程序段后的输出成果为( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d\n",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",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.186 B.256 C.324 D.400 作业答案 联系QQ:3326650399 微信:cs80188 微信二维码
试卷总分: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"
18.一个C语言程序老是从( )。
A.主过程开端履行
B.主函数开端履行
C.子程序开端履行
D.主程序开端履行
19.若a、b、c均为int型变量,则履行以下程序段后的输出成果为( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d\n",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",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.186
B.256
C.324
D.400
作业答案 联系QQ:3326650399 微信:cs80188