99年浙江大学c语言试卷

发布 2020-05-16 23:35:28 阅读 1043

一九九九学年《计算机程序设计基础-c>>试卷。

考试时间: 1999.6.29

a1卷。注: 请将正确答案写在答卷纸上。

一。从下列四个供选择的答案中选出一个正确的答案(共20分,每题2分)

1.下列运算符中自右向左结合的是:

a) *b) =c) -d) +

2.下列赋值语句中正确的是:

int a[3] =p;

a) p=&a; b) *p=a; c) *a+1)=a; d) p=a+1;

3.如下程序段:

int c=

int *k;

k=c;printf("next k is %d",*k);

其输出应为:

a) 1 b) 2 c) 3 d) 以上均不对。

4.执行 i=0; if(i>2) if ( i<3 ) i=1; else i=2; i=3; 后i的值应为:

a) 1 b) 2 c) 3 d) 语句错误。

5.对于以下结构定义:

struct *p;

++p->str中的++加在。

a) 指针str上 b) 指针p上 c) str所指的内容上 d) 以上均不是。

6.下列程序段的输出结果是:

char *c[3]=;

printf(“%s”, c+1);

a) second b) e c) econd d) 语法有错。

7.对于以下递归函数f, 调用f(4),其返回值为:

int f(int n)

a) 10 b) 11 c) 15 d) 以上均不是

8.循环 for(i=1,j=6; +i!=-j; )s=i+j; 将执行。

a) 2次 b) 3次 c) 4次 d) 以上均不是。

9.下列语句执行后n的值为:

n=(4 > 4 - 2) &2 > 1) |2 & 6);

a) 0 b) 1 c) 6 d) 以上均不对。

10.执行完下列语句段后, i值为:

int i;

int f(int n)

static int m = 1;

n+=m++;

return n;

n=f(1);

n=f(2);

a) 3 b) 4 c) 5 d) 以上均不是。

二、在下列空栏中填入正确的内容 (共30分,每空2分)

1.运行下列程序段后,n的值是:__3___

int n;

n = 7 & 3;

switch (n)

等价于:void f(char *s, char *t)

4.下列程序段的输出结果是:__a=2,b=1

int a=0,b=0;

if(++a>0 &&b>0)

++a;printf("a=%d,b=%d",a,b);

5.下列程序段执行后,i 和j的值分别是 __1,6

int i=6, j=0;

while(i--,i!=1);

6.下列程序段执行后,x 和y的值分别是 __10,6

int x=5,y=1;

do while (x+y<15);

7.用下列for循环将小写字母逆序输出(即从z到a), 其语句应为:

for (i=0; i<26; i++)putchar(‘z’-i)__

8.设有变量定义。

int i, j, k=2, *ip;

则执行下列语句后,i和k的值分别为 __2___4___

ip= &k;

i=(*ip)++

j=++ip);

9.下列程序段执行后,i = 14___

int i;

i=3 ^ 5 + 011 & 0x1a;

10.下列程序段执行后,i = 5___

#define m(x,y) x+y

#define n(x,y) x-y

int i;

i=m(1,2+3)*3/n(4+2,2);

11.下列函数strcmp(s1, s2)是字符串比较, 根据s1,s2大小分别返回负数(s1s2). 请将缺少部分补上。其中负数和正数为s1和s2中第一个不同的两个字母的差值。

strcmp(char * s1, char * s2)

12.下列程序段的输出结果是:__4,8

union ll in;

int a;

int b; }e;

printf("%d ,%d",

13. 现有链表,如下图所示,把p0结点插入指针p所指结点的后面,请写出必要的两个语句(次序不能颠倒): 1)__p0->next=p->next; (2)_p-struct list

main()

问题: (1) 当输入为 3+4*5时,上述程序将输出__23___

2) 当把上述if语句op1op2= =中的op1,op2对调后,对于输入为3+4*5时,上述程序将输出:__35___

2.写出下列程序的运行结果(8分)

#include <>

int x[3]=,sum=0, i;

void f0(int a)

void f1(void)

void f2(int *p)

main()

printf("%d ",x[y[2]])

f0(y);

printf("%d ",y[0]);

f1();printf("%d ",sum);

f2(&sum); f2(&sum);

printf("%d ",sum);

.写出下列程序的运行结果(8分)

#include <>

void f(int a,int n, int m)

{ int i,j,t;

for(i=0; i

浙江大学2023年C语言试卷

一 单选题。1 假定以下表达式中所有变量均已定义为int类型并已赋值,请问其中哪个表达式没有语法错误。a.x 3.14 2 b.y 2a b c.m ad.n xc 2.表达式 a b 的类型为 a.char b.int c.double d.voidb 3.执行以下这段程序后,unsigned c...

2023年浙江大学

2011年浙江大学翻译硕士真题回顾。1月15日下午翻译硕士基础150 第一大题均为选择题 1.backyard chat 2.问bob,tom,gray,christine 哪一个是 she 3.写了一个句子,让你选择美国 任期几年。4.cancer选择 doctor,physician,oculi...

大学C语言试卷A

武汉理工大学 高等教育试卷。学年学期 c语言程序设计 a卷 函授站学习形式 函授夜大 脱产 考核方式 考试考查 层次 高起本 专升本 高起专 高职考试形式 闭卷开卷 机试 笔试 统考 非统考 专业年级学号姓名。一 填空题 每空2分,共30分 1 源程序经过编译后产生的结果称为其扩展名为。2 一个c语...