东大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