浙江科技学院 C语言(2010-2011-1)试卷-2

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浙江科技学院考试试卷

浙江科技学院

2010 - 2011 学年第 1 学期考试试卷 B 卷

考试科目 C 语言程序设计 考试方式 闭卷 完成时限 2小时 拟题人 题库 审核人 批准人 2011年1月10日 机械、电气、信息等 学院 2010 年级 理工科 专业

命题:

说明:

1. 应将全部答案写在答卷纸对应的题号处;否则作无效处理;

2. 编程题应写明题号,若答卷纸不够,请写在背面,不要另添卷纸;

3. 考试完成后,必须将试卷与答卷同时交回。

一、判断题(本大题共12小题,每小题1分,共12分) 1. 在C 程序中,每行中只能写一条语句。 2. for 循环是先执行循环体语句,后判断表达式。

3. continue 的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,

接着再一次进行循环判断。

4. 定义函数时,形参的类型说明可以放在函数体内。

5. 当调用函数时,实参是一个数组名,则向函数传递的是数组的首地址。

6. 在程序中凡是以#号开始的语句行都是预处理命令行, 预处理命令行都必须以#

号开始。

7. C 语言结构体类型变量在程序运行期间,只有最开始的成员驻留在内存中。 8. “FILE *p”的作用是定义一个文件指针变量,其中的“FILE”是在stdio.h 头文件

中定义的。

9. 在不同的函数中可以使用相同名字的变量。

10. 在 C 程序中 , 函数既可以嵌套定义 , 也可以嵌套调用。

专业班 学 姓 ………………………………………………………………………装订线……………………………………………………………………………………

11.假设有int a[10], *p; 则p=&a[0]与p=a等价。

12.构成数组的各个元素可以有不同的数据类型。

二、单选题(本大题共20小题,每小题1分,共20分)

1.有字符串如下,"\n\\\407as1\"\xabc",则字符串的长度为()。

A. 6

B. 7

C. 8

D. 9

2.以下变量x,y,z均为double类型且已正确赋值,不能正确表示数学式子x÷y÷z

的C语言表达式是()。

A. x/y*z

B. x*(1/(y*z))

C. x/y*1/z

D. x/y/z

3.设有:

int a=1,b=2,c=3,d=4,m=2,n=2;

执行(m=a>b)&&(n=c>d)后n的值是()。

A. 1

B. 2

C. 3

D. 4

4.以下4个选项中,不能看做一条语句的是()。

A. ;

B. a=5,b=2.5,c=3.6;

C. if(a<5);

D. if(b!=5)x=2;y=6;

5.设有数组定义: char array[]="China"; 则数组array所占的空间为()。

A. 4个字节

B. 5个字节

C. 6个字节

D. 7个字节

6.以下程序有语法错误,有关错误原因的正确说法是()。

main()

{ int G=5,k;

void prt_char();

...

k=prt_char(G);

...

}

A. 语句 void prt_char();有错,它是函数调用语句,不能用void说明

B. 变量名不能使用大写字母

C. 函数说明和函数调用语句之间有矛盾

D. 函数名不能使用下划线

7.下面程序应能对两个整型变量的值进行交换。以下正确的说法是()。

main()

{ int a=10,b=20;

printf("(1)a=%d,b=%d\n",a,b);

swap(&a,&b);

printf("(2)a=%d,b=%d\n",a,b);

}

swap(int p,int q)

{ int t;

t=p;p=q;q=t;

}

A. 该程序完全正确

B. 该程序有错,只要将语句swap(&a,&b);中的参数改为a,b即可

C. 该程序有错,只要将swap()函数中的形参p和q以及t均定义为指针(执行

语句不变)即可

D. 以上说法都不对

8.有以下程序

#define F(X,Y)(X)*(Y)

main()

{ int a=3, b=4;

printf("%d\n", F(a++, b++));

}

程序运行后的输出结果是()。

A. 12

B. 15

C. 16

D. 20

9.若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是。

A. a,point,*&a

B. &*a,&a,*point

C. *&point,*point,&a

D. &a,&*point,point

10.已定义以下函数

fun(char *p2, char *p1)

{ while((*p2=*p1)!=’\0’){p1++;p2++;}

}

函数的功能是()。

A. 将p1所指字符串复制到p2所指内存空间

B. 将p1所指字符串的地址赋给指针p2

C. 对p1和p2两个指针所指字符串进行比较

D. 检查p1和p2两个指针所指字符串中是否有’\0’

11.下面说明不正确的是()。

A. char a[10]="china";

B. char a[10],*p=a;p="china"

C. char *a;a="china";

D. char a[10],*p;p=a="china"

12.以下定义中 int(*prt)[3],标识符prt()。

A. 定义不合法

B. 是一个指针数组名,每个元素都是一个指向整数变量的指针

C. 是一个指针,它指向一个具有三个元素的一维数组

D. 是一个指向整型变量的指针

13.若有说明语句

char a[]="It is mine";

char *p="It is mine";

则以下不正确的叙述是()。

A. a+1表示的是字符t的地址

B. p指向另外的字符串时,字符串的长度不受限制

C. p变量中存放的地址值可以改变

D. a中只能存放10个字符

相关文档
最新文档