东大23春《高级语言程序设计基础》在线平时作业3【标准答案】

作者:奥鹏周老师 分类: 东北大学 发布时间: 2023-03-02 18:58

作业答案 联系QQ:3326650399 微信:cs80188

《高级语言程序设计基础》在线平常作业3-00001

试卷总分:100 得分:100

一、单选题 (共 20 道试题,共 100 分)

1.若履行下述程序时从键盘输入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



2.下面程序的输出成果为( )。 main( ) { int a=1,b=0; switch(a) { case 1: switch (b) { case 0: printf("**0**"); break; case 1: printf("**1**"); break; } case 2: printf("**2**"); break; }}

A.**0**

B.**0****2**

C.**0****1****2**

D.有语法错误



3.当阐明一个共用体变量时系统分配给它的内存是( )。

A.共用体中榜首个成员所需内存量

B.共用体中最终一个成员所需内存量

C.共用体成员中占内存量最大者所需的容量

D.共用体中各成员所需内存量的总和



4.以下程序运转后,输出成果是( )。   #define ADD(x) x+x   main( )   { int m=1, n=2, s=3;    s*=ADD(m+n);    printf("s=%d\n", s);  }

A.s=8

B.s=9

C.s=6

D.s=18



5.C语言程序从main()函数开端履行,所以这个函数要写在( )。

A.程序文件的开端

B.程序文件的最终

C.它所调用的函数的前面

D.程序文件的任何方位



6.若有界说: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)



7.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判别是( )。     for (y=100; x!=y; ++x,y++)      printf("****\n");

A.循环体只履行一次

B.是无限循环

C.循环体一次都不履行

D.for句子中存在语法错误



8.设c1、c2均是char类型变量,则以下不正确的函数调用是( )。

A.scanf("c1=%cc2=%c",&c1,&c2);

B.getchar( )

C.putchar(c2);

D.putchar(c1,c2)"



9.若a和b均为int型变量,则履行以下程序断后x的输出是( )。 x=15;y=15;printf("%d\n",x%=(y%=2));

A.0

B.1

C.6

D.12



10.对以下阐明句子的正确了解是( )。 int a[10]={6,7,8,9,10};

A.将5个初值顺次赋给a[1]至a[5]

B.将5个初值顺次赋给a[0]至a[4]

C.将5个初值顺次赋给a[6]至a[10]

D.由于数组与初值的个数不一样,所以此句子不正确



11.若有阐明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙说正确的是( )。

A.*pc[0]代表的是字符串"aaa

B.*pc[0]代表的是字符\'a\'

C.pc[0]代表的是字符串"aaa"

D.pc[0]代表的是字符\'a\'



12.下面程序的运转成果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]);

A.输出空格

B.\0

C.e

D.f



13.设x,y是float型变量,则不正确的赋值句子是( )。

A.++x;

B.y=int(5);

C.x*=y+1;

D.x=y=0;



14.已知学生记载描绘如下,下面临结构体成员"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;



15.若要使指针变量p指向一个动态拓荒的字符型存储单元,则空中应挑选填入的是( )。 char *p;p= malloc(sizeof(char));

A.char

B.char *

C.(*char)

D.(char *)



16.履行下面程序段后,x的值是( )。 int x;printf("%d\n",(x=3*5,x+5));

A.10

B.15

C.20

D.5



17.C语言规则:简略变量做实参时,它和对应形参之间的数据传递方法是( )。

A.地址传递

B.单向值传递

C.由实参传给形参,再由形参传回实参

D.由用户指定传递方法



18.以下在任何状况下计算两数积时都不会导致二义性的宏界说是( )。

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))"



19.以下运算正确的程序段是( )。

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);"



20.以下对指针变量的操作中,不正确的是( )。

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;"

作业答案 联系QQ:3326650399 微信:cs80188