高级语言程序设计

发布 2021-04-24 15:27:28 阅读 5655

东北大学网络教育学院。

程序设计基础(c) 试卷(a卷)

学习中心姓名学号。

一、选择题(每题2分,共40分)

1.c语言中字符型(char)数据在内存中的存储形式是( )

a、原码 b、补码c、反码d、ascii码。

2.2.下列关于栈的描述中错误的是___

a、栈是先进后出的线性表。

b、栈只能顺序存储。

c、栈具有记忆作用。

d、对栈的插入与删除操作中,不需要改变栈底指针。

3.以下正确的if语句是( )

a、if (n>0) printf("%f",n)

printf("%f",-n);

b、if (n>0)

n=n+m; printf("%f",n);

else printf("%f",-n);

c、if (n>0)

n=n+m; printf("%f",n);

else printf("%f",-n);

d、if (n>0)

n=n+m; printf("%f",n) }

else printf("%f",-n);

4.设有程序段( )

int x=10;

while (x=0)

x=x-1;

a、while循环执行10次b、循环是无限循环。

c、循环体语句一次也不执行d、循环体语句只执行一次。

5.若有以下程序段:

for (m=1; m<=100; m++)

正确的描述是( )

a、当y<0时整个循环结束b、y>=0时什么也不输出。

c、printf函数永远也不执行d、最多允许输出100个非负整数。

6.若二维数组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

7.判断字符串s1是否大于字符串s2,应当使用( )

a、if(s1>s2b、if(strcmp(s1,s2))

c、if(strcmp(s2,s1)>0d、if(strcmp(s1,s2)>0)

8.以下能对二维数组a进行正确初始化的语句是( )

a、int a[2]

b、int a[3]=,

c、int a[2][4]=,

d、int a[3]=,

9.设有一段程序:

int *var,a;

a=100;var=&a;

a=*var+10; 执行上面程序段后a的值为( )

a、120 b、110 c、100 d、90

10.以下正确的说法是( )

a、实参和与其对应的形参各占用独立的存储单元。

b、实参和与其对应的形参共占用一个存储单元。

c、只有当实参和与其对应的形参同名时才共用存储单元。

d、形参是虚拟的,不占用存储单元。

11.下面程序段所表示的数学函数关系是( )

x=-1;if (a!=0)

if (a>0) x=1;

else x=0;

1 (a<01 (a<0)

a、x= 0 (a=0) b、x= -1 (a=0)

1 (a>00 (a>0)

0 (a<01 (a<0)

c、x= -1 (a=0) d、x= 1 (a=0)

1 (a>00 (a>0)

12.设有说明:int a=1,b=0; 则执行以下语句后的输出结果是___

switch(a)

case 2: printf("*2 **n");break;

a、**0b、**0 **

c、**0d、switch语句中存。

** 1在语法错误。

13.c语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是( )

a、地址传递 b、单向值传递。

c、由实参传给形参,再由形参传回实参。

d、由用户指定传递方式。

14.在一个源文件中定义的全局变量的作用域为( )

a、本文件的全部范围。

b、本程序的全部范围。

c、本函数的全部范围。

d、从定义该变量的位置开始至本文件结束。

15.以下关于预处理的叙述中不正确的是( )

a、c源程序中凡是以“#”号开始的控制行都是预处理命令行。

b、预处理命令行必须位于源程序的开始部位。

c、一条有效的预处理命令行必须单独占据一行。

d、预处理命令是在正式编译之前先行被处理的。

16.当定义一个结构体变量时系统分配给它的内存是( )

a、结构中第一个成员所需的内存量。

b、结构中最后一个成员所需的内存量。

c、结构体成员中占内存量最大者所需的容量。

d、结构体中各成员所需内存量的总和。

17.函数调用语句:fseek(fp, 10l, 2);的含义是:将文件位置指针( )

a、移动到距离文件头10个字节处。

b、从当前位置向后移动10个字节。

c、从文件尾部前移10个字节。

d、移到离当前位置10个字节处。

18.设有如下定义,若要使px指向rec中的x域,正确的赋值语句是( )

struct aa

int x; float y; }rec,*px;

a、*px=

c、px=(struct aa *)d、px=(struct aa *)

19.下面对typedef的叙述中不正确的是( )

a、用typedef不能定义变量名。

b、用typedef可以定义新的数据类型。

c、用typedef只是将已存在的类型用一个新的标识符来代表。

d、使用typedef有利于程序的通用和移植。

20.以下在任何情况下计算两数积时都不会引起二义性的宏定义是( )

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

二、分析程序题(根据执行过程,给出执行结果。每题3分,共30分)

1.main( )

2.main()

int i, n=0;

for( i=1; i<20; i++)

if ( i%3==0&&i%5!=0) n++;

printf (“n %d”, n);

3.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;

4.int x=-3;

dowhile(!x);

5.main( )

int b[10]=;

int *q=b;

printf("%d", q+2) )

6.main()

int a[5]=,i,j,t;

for(j=1;j<=2;j++)

t=a[4];

for(i=0;i<4;i++)a[i+1]=a[i];

a[0]=t;

for(i=0;i<5;i++)printf("%d",a[i]);

7.main( )

char s=abcde” *p=s;

高级语言程序设计

总分 100.00,做题时间 90分钟 一 单项选择题 总题数 15,分数 30.00 语言早期规定建立文件缓冲区采用的形式是 分数 2.00 a.缓冲文件系统。b.非缓冲文件系统。c.分页文件系统。解析 2.以下是对二维数组的正确说明的是 分数 2.00 a 3,4 a 1 4 a 3 4 解析 ...

高级语言程序设计

班级学号 021110212 姓名 卢荼 同组同学。成绩。时间 2011.6 28 题目 班级档案管理系统。一 设计任务与目标。对一个有n个学生的班级,通过该系统实现对该班级学生的基本信息进行录入 显示 修改 删除 保存等操作的管理。功能要求 1 本系统采用一个包含n个数据的结构体数组,每个数据的结...

高级语言程序设计

36.下面程序的运行结果是。include void main int a 2,b 1,c 2 if aif b 0 c 0 else c printf c d c 参 考察知识点 if语句的嵌套。运行结果 c 2 下面程序的运行结果是。include void main int a,b,c a 3...