2022年8月东北大学 《高级语言程序设计基础X》在线平时作业1
完整答案在最底下附件,请核对试题后再下载,如有问题请联系客服
《高级语言程序设计基础X》在线平时作业1
一、单选题(共25道试题共100分)
1.若有说明:inta[3][4];则数组a中各元素()。
A.可在程序的运行阶段得到初值0
B.可在程序的编译阶段得到初值0
C.不能得到确定的初值
D.可在程序的编译或运行阶段得到初值0
2.若有说明:inta[][4]={00};则下面不正确的叙述是()。
A.数组a中的每个元素都可得到初值0
B.二维数组a的第1维大小为1
C.因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1
D.只有数组元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
3.下面程序的运行结果是()。chara[7]="abcdef";charb[4]="ABC";strcpy(ab);printf("%c"a[5]);
A.输出空格
B.
C.e
D.f
4.若有说明:inta[10];则对数组元素的正确引用是()。
A.a[10]
B.a[35]
C.a(5)
D.a[10-10]
5.已知学生记录描述如下,下面对结构体成员"computer"的赋值方式正确的是()。structstudent{intnum;charname[8];struct{floatmath;floatengl;floatcomputer;}mark;}std;
A.student.computer=84;
B.mark.computer=84;
C.std.mark.computer=84;
D.std.computer=84;
6.C语言的编译系统对宏命令的处理是()。
A.在对源程序中其它成分正式编译之前进行的
B.和C程序中的其它语句同时进行的
C.在程序连接时进行的
D.在程序运行时进行的
7.以下程序的输出结果是()。main(){inta=0b=1c=0d=20;if(a)d=d-10;elseif(!b)if(!c)d=15;elsed=25;printf("d=%dn"d);}
A.d=10
B.d=15
C.d=20
D.d=25
8.在一个源文件中定义的全局变量的作用域为()。
A.本文件的全部范围
B.本程序的全部范围
C.本函数的全部范围
D.从定义该变量的位置开始至本文件结束
9.下程序()。main(){intx1=3x2=0x3=0;if(x1=x2+x3)printf("****");elseprintf("####");}
A.输出:****
B.输出:###
C.#存在语法错误
D.无输出结果
10.以下对二维数组a的正确说明是()。
A.inta[3][];
B.floata(34);
C.doublea[1][4]
D.floata(3)(4);
11.当定义一个结构体变量时系统分配给它的内存是()。
A.结构中第一个成员所需的内存量
B.结构中最后一个成员所需的内存量
C.结构体成员中占内存量最大者所需的容量
D.结构体中各成员所需内存量的总和
12.以下正确的定义语句是()。
A.inta[1][4]={12345};
B.floatx[3][]={{1}{2}{3}};
C.longb[2][3]={{1}{12}{123}};
D.doubley[][3]={0};
13.若有以下说明,并且0≤i<10则()是对数组元素的错误引用。inta[]={12345678910}*p=aI;
A.*(a+i)
B.a[p-a+i]
C.p+i
D.*(&a[i])
14.对两个数组a和b进行如下初始化chara[]="ABCDEF";charb[]={'A''B''C''D''E''F'};则以下叙述正确的是()。
A.a与b数组完全相同
B.a与b长度相同
C.a和b中都存放字符串
D.a数组比b数组长
15.以下对指针变量的操作中,不正确的是()。
A.intp*q;q=&p;
B.int*p*q;q=p=NULL;
C.inta=5*p;*p=a;
D.inta=5*p=&a*q=&a;*p=*q;"
16.若a和b均为int型变量,则执行以下程序断后x的输出是()。x=15;y=15;printf("%dn"x%=(y%=2));
A.0
B.1
C.6
D.12
17.下面程序段的运行结果是()。chara[7]="abcdef";charb[4]="ABC";strcpy(ab);printf("%c"a[5]);
A.空格
B.
C.e
D.f
18.函数调用语句:fseek(fp10L2);的含义是:将文件位置指针()。
A.移动到距离文件头10个字节处
B.从当前位置向后移动10个字节
C.从文件尾部前移10个字节
D.移到离当前位置10个字节处
19.若二维数组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
20.执行以下程序后,m的值是()。#defineMIN(xy)(x)<(y)?(x):(y)main(){inti=12j=8m;m=10*MIN(ij);printf("%dn"m);}
A.120
B.80
C.12
D.8
21.以下能正确进行字符串赋值操作的是()。
A.chars[5]={"12345"};
B.chars[5]={'1''2''3''4''5'};
C.char*s;*s="12345";
D.char*s="12345";"
22.有字符数组a[80]和b[80],则正确的输出语句是()。
A.puts(a.b);
B.printf("%s%s"a[]b[]);
C.pitchar(ab);
D.puts(a);puts(b);
23.以下程序段中的do-while循环()。m=-1;do{m=m*m;}while(!m);
A.是死循环
B.执行二次
C.执行一次
D.有语法错误
24.C语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是()。
A.地址传递
B.单向值传递
C.由实参传给形参,再由形参传回实参
D.由用户指定传递方式
25.以下能对二维数组a进行正确初始化的语句是()。
A.inta[2][]={{101}{523}};
B.inta[][3]={{123}{456}};
C.inta[2][4]={{123}{45}{6}};
D.inta[][3]={{101}{}{11}};"
举报
一、单选题(共25道试题共100分)
1.若有说明:inta[3][4];则数组a中各元素()。
A.可在程序的运行阶段得到初值0
B.可在程序的编译阶段得到初值0
C.不能得到确定的初值
D.可在程序的编译或运行阶段得到初值0
2.若有说明:inta[][4]={00};则下面不正确的叙述是()。
A.数组a中的每个元素都可得到初值0
B.二维数组a的第1维大小为1
C.因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1
D.只有数组元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
3.下面程序的运行结果是()。chara[7]="abcdef";charb[4]="ABC";strcpy(ab);printf("%c"a[5]);
A.输出空格
B.
C.e
D.f
4.若有说明:inta[10];则对数组元素的正确引用是()。
A.a[10]
B.a[35]
C.a(5)
D.a[10-10]
5.已知学生记录描述如下,下面对结构体成员"computer"的赋值方式正确的是()。structstudent{intnum;charname[8];struct{floatmath;floatengl;floatcomputer;}mark;}std;
A.student.computer=84;
B.mark.computer=84;
C.std.mark.computer=84;
D.std.computer=84;
6.C语言的编译系统对宏命令的处理是()。
A.在对源程序中其它成分正式编译之前进行的
B.和C程序中的其它语句同时进行的
C.在程序连接时进行的
D.在程序运行时进行的
7.以下程序的输出结果是()。main(){inta=0b=1c=0d=20;if(a)d=d-10;elseif(!b)if(!c)d=15;elsed=25;printf("d=%dn"d);}
A.d=10
B.d=15
C.d=20
D.d=25
8.在一个源文件中定义的全局变量的作用域为()。
A.本文件的全部范围
B.本程序的全部范围
C.本函数的全部范围
D.从定义该变量的位置开始至本文件结束
9.下程序()。main(){intx1=3x2=0x3=0;if(x1=x2+x3)printf("****");elseprintf("####");}
A.输出:****
B.输出:###
C.#存在语法错误
D.无输出结果
10.以下对二维数组a的正确说明是()。
A.inta[3][];
B.floata(34);
C.doublea[1][4]
D.floata(3)(4);
11.当定义一个结构体变量时系统分配给它的内存是()。
A.结构中第一个成员所需的内存量
B.结构中最后一个成员所需的内存量
C.结构体成员中占内存量最大者所需的容量
D.结构体中各成员所需内存量的总和
12.以下正确的定义语句是()。
A.inta[1][4]={12345};
B.floatx[3][]={{1}{2}{3}};
C.longb[2][3]={{1}{12}{123}};
D.doubley[][3]={0};
13.若有以下说明,并且0≤i<10则()是对数组元素的错误引用。inta[]={12345678910}*p=aI;
A.*(a+i)
B.a[p-a+i]
C.p+i
D.*(&a[i])
14.对两个数组a和b进行如下初始化chara[]="ABCDEF";charb[]={'A''B''C''D''E''F'};则以下叙述正确的是()。
A.a与b数组完全相同
B.a与b长度相同
C.a和b中都存放字符串
D.a数组比b数组长
15.以下对指针变量的操作中,不正确的是()。
A.intp*q;q=&p;
B.int*p*q;q=p=NULL;
C.inta=5*p;*p=a;
D.inta=5*p=&a*q=&a;*p=*q;"
16.若a和b均为int型变量,则执行以下程序断后x的输出是()。x=15;y=15;printf("%dn"x%=(y%=2));
A.0
B.1
C.6
D.12
17.下面程序段的运行结果是()。chara[7]="abcdef";charb[4]="ABC";strcpy(ab);printf("%c"a[5]);
A.空格
B.
C.e
D.f
18.函数调用语句:fseek(fp10L2);的含义是:将文件位置指针()。
A.移动到距离文件头10个字节处
B.从当前位置向后移动10个字节
C.从文件尾部前移10个字节
D.移到离当前位置10个字节处
19.若二维数组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
20.执行以下程序后,m的值是()。#defineMIN(xy)(x)<(y)?(x):(y)main(){inti=12j=8m;m=10*MIN(ij);printf("%dn"m);}
A.120
B.80
C.12
D.8
21.以下能正确进行字符串赋值操作的是()。
A.chars[5]={"12345"};
B.chars[5]={'1''2''3''4''5'};
C.char*s;*s="12345";
D.char*s="12345";"
22.有字符数组a[80]和b[80],则正确的输出语句是()。
A.puts(a.b);
B.printf("%s%s"a[]b[]);
C.pitchar(ab);
D.puts(a);puts(b);
23.以下程序段中的do-while循环()。m=-1;do{m=m*m;}while(!m);
A.是死循环
B.执行二次
C.执行一次
D.有语法错误
24.C语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是()。
A.地址传递
B.单向值传递
C.由实参传给形参,再由形参传回实参
D.由用户指定传递方式
25.以下能对二维数组a进行正确初始化的语句是()。
A.inta[2][]={{101}{523}};
B.inta[][3]={{123}{456}};
C.inta[2][4]={{123}{45}{6}};
D.inta[][3]={{101}{}{11}};"
答案附件,售价 2.00 奥币,点击购买
有任何问题,请联系客服,客服微信:aokai59
0 个回复