东大22秋《高级语言程序设计基础X》在线平时作业2【标准答案】 作者:奥鹏周老师 分类: 东北大学 发布时间: 2022-11-22 12:42 作业答案 联系QQ:3326650399 微信:cs80188 微信二维码 《高级语言程序设计基础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.186 B.256 C.324 D.400 5.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判别是( )。 for (y=100; x!=y; ++x,y++) printf("****\n"); 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\' 18.以下为一维整型数组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\n",x%=(y%=2)); A.0 B.1 C.6 D.12 20.以下程序段的履行成果是( )。 int x=-3; do { printf("%d\n", 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)" 作业答案 联系QQ:3326650399 微信:cs80188 微信二维码
试卷总分: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.186
B.256
C.324
D.400
5.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判别是( )。 for (y=100; x!=y; ++x,y++) printf("****\n");
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\'
18.以下为一维整型数组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\n",x%=(y%=2));
A.0
B.1
C.6
D.12
20.以下程序段的履行成果是( )。 int x=-3; do { printf("%d\n", 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)"
作业答案 联系QQ:3326650399 微信:cs80188