东大22年春学期《高级语言程序设计基础X》在线平时作业2【标准答案】

可做奥鹏全部院校在线离线作业毕业论文QQ:3230981406 微信:aopopenfd777

发布时间:2022-03-06 12:42:02来源:admin浏览: 71 次

东大22年春学期《高级语言程序设计基础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<b)  printf("%d\n",s*s); s=b;  }

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

 


作业咨询 论文咨询
微信客服扫一扫

回到顶部